蜀道之难,难于上青天

0%

Interface Builder

这个周末接触了下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方法里有效,不过这已经很不错了,不过还没想好在哪用。。