u16suzuの blog

日々学んだことのメモブログです。

UIEdgeInsets

UIEdgeInsets

CSSにおける paddingみたいなもの. 元となる CGRect から paddingを適用した CGRect を生成することができる. UAModalPanelで使用されている. CGPointを考えなくてもいいところとサイズの計算を自分でしなくても良いところが便利.

CGRect

CGPointと CGSizeからなる構造体. 生成が面倒.

UIView *blueView = [[UIView alloc]initWithFrame:CGRectMake(100, 200, 100, 100)];
blueView.backgroundColor = [UIColor blueColor];

UIEdgeInsets insets = UIEdgeInsetsMake(10, 10, 10, 10); // top, left, bottom, right

CGRect blackRect = UIEdgeInsetsInsetRect(blueView.frame, insets);
UIView *blackView = [[UIView alloc]initWithFrame:blackRect];
blackView.backgroundColor = [UIColor blackColor];

[self.view addSubview:blueView];
[self.view addSubview:blackView];

f:id:u16s:20130710224710p:plain

こんな感じで上下左右が10ピクセルずつ小さいビューが作れる.