スキップしてメイン コンテンツに移動

CGRect、CGPoint、CGSize


サイズ指定

UIViewやそのサブクラスでサイズや位置を指定するにはCGRect、CGPoint、CGSizeクラスを使用します。

CGRect

CGRectは、対象オブジェクトの位置とサイズの両方を管理するクラスです。
生成するには、CGRectMakeを使用し、引数には「位置x, 位置y, 幅, 高さ」の順で指定します。
CGRect

// CGRectの生成
CGRect rect = CGRectMake(0, 0, 100, 80);

// 位置x、位置y、幅、高さ全て0のCGRectを生成する
CGRect rect = CGRectZero;

CGRectから値を取得するには以下のプロパティにて取得できます。
【CGRectの主要プロパティ】
プロパティ/型説明
origin.x
(float)
位置のX座標を取得する
(例)コントローラ(label)のX座標を取得する
 float labelx = label.frame.origin.x;
origin.y
(float)
位置のY座標を取得する
(例)コントローラ(label)のY座標を取得する
 float labely = label.frame.origin.y;
size.width
(float)
幅を取得する
(例)コントローラ(label)の幅を取得する
 float labelw = label.frame.size.width;
size.height
(float)
高さを取得する
(例)コントローラ(label)の高さを取得する
 float labelh = label.frame.size.height;

// UILabelを用いた例文
UILabel *label = [[[UILabel alloc] init] autorelease];
label.frame = CGRectMake(10, 10, 100, 50);

CGPoint

CGPointは、対象オブジェクトの位置を管理するクラスです。
生成するには、CGPointMakeを使用し、引数には「位置x, 位置y」の順で指定します。
CGPoint

// CGPointの生成
CGPoint point = CGPointMake(200, 300);

CGPointから値を取得するには以下のプロパティにて取得できます。
【CGPointの主要プロパティ】
プロパティ/型説明
x
(float)
位置のX座標を取得する
(例)float loc_x = point.x;
y
(float)
位置のY座標を取得する
(例)float loc_y = point.y;

// UISwitchを用いた例文
UISwitch *sw = [[[UISwitch alloc] init] autorelease];
sw.center = CGPointMake(200, 300);

CGSize

CGSizeは、対象オブジェクトのサイズを管理するクラスです。
生成するには、CGSizeMakeを使用し、引数には「幅, 高さ」の順で指定します。
CGSize

// CGSizeの生成
CGSize sz = CGSizeMake(100, 50);

CGSizeから値を取得するには以下のプロパティにて取得できます。
【CGSizeの主要プロパティ】
プロパティ/型説明
width
(float)
対象オブジェクトの幅を取得する
(例)float w = sz.width;
height
(float)
対象オブジェクトの高さを取得する
(例)float h = sz.height;

コメント

このブログの人気の投稿

日本に来た 今三週間

四月六日に日本に来た、今三週間になった。 嬉しくなかった、悲しくなかった。 日本の携帯電話のカメラはとてもいいよ、私は今撮影が好きだ、いつも寮に帰る途中で花とか魚とか写真を撮る。これも生活の趣味だ。 滴は綺麗だ 桜が凋んで落ちる 天気がいいとき、自転車に乗って、食材を買った。 自分で料理をつくる、おいしそうでしょう。 昨日清水寺に行った、天気はとても熱いね。日に焼けすぎたので、腕は今赤い。 側に花があるので、赤い清水寺はもっと美しそうだ。 木の色は艶やかだ。