iPhoneアプリ開発の虎の巻
HOME > サイズ指定

サイズ指定

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;
totop