自定义View的创建、添加、移除执行过程分析
Contents
1.创建自定义view的类文件
2.创建一个xib文件来表述自定义view(也可以通过代码)
创建一个xib文件
设置xib文件名(
xib文件名称和类文件保持一致
)编辑xib文件:(
绑定class、添加子控件
)也就是给自定义的view添加几个子控件这里我们添加了四个系统的控件(label、button、switch、textFiled)声明一个
类方法
,快速创建一个自定义的view实现类方法
创建一个自定义view(子控件)并添加到控制器的view(父控件)上面
问题
:为什么viewDidLoad函数执行完毕后创建的customView对象没有销毁呢?答
:当您通过addSubview:
方法将一个视图作为子视图添加时,父视图会对其进行保持
操作。从控制器的view(父控件)上面移除自定义的view(子控件)
调用
removeFromSuperview
方法,会自动将自定义view对象销毁
.重写自定义view的
dealloc
方法,监听其销毁官方对
removeFromSuperview
方法的说明:
调用顺序详细说明:
1.创建自定义view的时候
创建自定义view
重写
didAddSubview:
方法调用顺序
备注:
- didAddSubview:
方法会按照自定义view内部的子控件循环调用
2.添加自定义view的时候
添加自定义view
重写相应的方法,监听其执行顺序
调用顺序
3.从父控件移除自定义view(子控件)的时候
移除自定义view
重写相应的方法,监听其执行顺序
调用顺序
备注:
- (void)willRemoveSubview:(UIView *)subview;
会按照自定义view内部的子控件循环调用