基本认识:
1.自定义一个控件就是一个简单MVC逻辑.包含三个部分,Model(模型),View(试图),Controller(控制器)
2.自定义控件有两种方法,一种是纯代码编写,另外一种是使用Xib.
三个部分各自作用
Model : 保存一个View的基本数据
View : View的试图界面组成
Controller : 创建Model,创建View,并且将Model的基本数据传递给View,初始化View的试图内容
Model里面应该有的方法:
提供方法初始化一个模型,供View对象初始化使用
View里面应该有的方法:
提供方法接收一个模型,初始化View对象的具体内容
还有View对象的一些其他的方法
Controller里面应该有的方法:
接收Model和View的头文件,创建Model和View.创建View的时候使用Model的数据初始化View.
(Controller不需要关心具体如何实现,只需要成功创建一个完整的View)
使用Xib的步骤:
1.通过Xib将需要创建的View(包括子控件)的尺寸与大小都设置好.
2.在Controller需要创建View的地方加载nib文件.
3.使用Model初始化View的具体内容
注意点:
在Xib中通过可视化的试图管理,设置好了子控件的尺寸与大小,所以在代码实现中可以省略了layoutSubviews方法.
使用纯代码的方法:
1.定义模型属性,定义子控件属性,weak对象指向创建的对象,对象在声明周期结束后没有强引用会自用销毁,所以,属性要改为强引用
2.初始化View模板的尺寸大小,在initWithFrame方法中初始化
3.初始化子控件的尺寸大小,在layoutSubviews方法中实现
4.创建的View对象接收一个模型,初始化View对象的具体内容
注意点:
要自定义Cell 创建的类要继承UITableViewCell