学习日记:关于封装

一:封装的意义

封装就是对类中的一些字段,方法进行保护,不被外界所访问到。同时可以减少主要视图控制器中的代码量,方便复用,维护起来也更加方便。下面是封装一个view的指导方法

不难看出,所需要做的其实并不复杂

首先,构建一个模型类,继承于nsobject,用于传递数据。

其次,根据需要创建类用于封装,通常多用于UI部件的封装。建议自己写扩充方法传递数据,将-(instancetype)initWithFrame:(CGRect)frame 扩充为-(instancetype)initWithFrame:(CGRect)frame withModel:(model *)model ,这样既可以区分于系统方法,防止再次调用的人调错方法,又可以同时传递出模型数据和控件尺寸。如果不扩充系统方法,建议使用-(instancetype)initWithFrame:(CGRect)frame方法,因为此方法默认会调用-(instancetype)init,但是一定要在layoutSubView方法里重写Frame,以防止调用的视图控制器传递空的Frame,无法创建成功。

最后,在使用的控制器内创建控件,并且将模型数据传递过去。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • iOS开发系列--网络开发 概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博、微信等,这些应用本身可...
    lichengjin阅读 3,772评论 2 7
  • 掌握 UIView的常见属性和方法 九宫格计算方法 字典转模型 Xib的使用 自定义view(view的封装) 简...
    JonesCxy阅读 1,425评论 1 3
  • ios--控件--自定义封装一个控件 感谢原作者的分享:http://blog.csdn.net/zhangao0...
    少年深秋身礼服侧身阅读 749评论 0 1
  • *面试心声:其实这些题本人都没怎么背,但是在上海 两周半 面了大约10家 收到差不多3个offer,总结起来就是把...
    Dove_iOS阅读 27,268评论 30 472
  • 抬头仰望45度的天空,此刻一切都不再属于你了 向前的脚步,进退间距,过往的狼狈,不堪一击的泪水,那样肆无忌惮 听熟...
    落落N阅读 419评论 1 1