这个周末接触了下interface builder,主要涉及到size class 和nib,从最初的抓耳挠腮到初窥门径,还是蛮有成就感的,
准备在项目里尝试用一下nib这一块。
size class
- 分为C(紧凑) A(任意) R(正常) 三种,
假如要在C和R之间做区分,那千万别设置A相关的属性,这样会乱的很,就将C和R分开做 - 一般情况下都是 wA+hA 情况
- iphone:正面向上的情况是 wC+hR,其他面向情况都是 wC+hC
- ipad:长和宽都是regular
interface builder
1. customview+nib
- 自定义view的话,file owner 设置为self的类
- 一般大家都只生成一个 view,然后将view添加到self,当作subview
- view只是self的一个属性
- view的类型不能设置为self,这样会导致循环引用,会崩溃
2. drawrect+nib
- 这个到要把view的类型设置成self的类型
- 有两个关键词:IB_DESIGNABLE(表示这个要实时在interface builder展示啦)和IBInspectable(动态属性),可以在interface builder上设置,确实很惊艳
- 不过这种目前只能在- (void)drawRect:(CGRect)rect方法里有效,不过这已经很不错了,不过还没想好在哪用。。