代码规范

自定义控件

  • 在构造方法中添加子控件
    • 提供便利构造类方法 一般以类名命名
    • init 方法内部会自动调用 initWithFrame: 方法 内层方法
    • initWithFrame: 外层方法
    • initWithCode: 从nib文件中初始化时调用
      • 实际编程中,我们如果用Interface Builder 方式创建了UIView对象。(也就是,用拖控件的方式)
        那么,initWithFrame方法方法是不会被调用的。因为nib文件已经知道如何初始化该View。(因为,我们在拖该view的时候,就定义好了长、宽、背景等属性)。
        这时候,会调用initWithCoder方法,我们可以用initWithCoder方法来重新定义我们在nib中已经设置的各项属性。
    • 单独提出控件添加方法(如:setUp) 再将其添加到上述方法中
    • 内部添加的控件,用类扩展属性引用(weak)
  • 在layoutSubView中布局子控件(自身的frame一改变就会调用这个方法)
    • 一定要写[super layoutSubView] (坑!!!)
    • layout自动布局后期添加
  • 添加一个数据模型接口属性,在这个模型属性的setter方法中给控件添加数据
    • 在setter方法中给各个子控件添加数据

代码规范_第1张图片
自定义控件.png

优势:

  • 隔离, 分层
    • 屏蔽代码动荡
    • 屏蔽实现细节,好处就是隔离,内部东西改变非常大,外面是不知道的,减小对外界的影响,屏蔽风险

你可能感兴趣的:(代码规范)