UIView
经常重写的方法
//将要移动到父视图
- (void)willMoveToSuperView:(UIView *)newSuperView{
}
//子视图添加完成显示之后会调用
- (void)didMoveToSuperview{
}
//子视图添加完成之后
- (void)didAddSubview{
}
//将要删除子视图,会把子视图的参数传递进来
- (void)willRemoveSubview{
}
//建立父子关系时,父视图,会保存一个子视图的强指针
[self.view addSubView:view];
//将视图插入到指定位置
[self.view insertSubview:view addIndex:2];
//将视图插入到指定视图的下面
[self.view insertSubview:subView belowSubview:view];
//将视图插入到指定视图的上面
[self.view insertSbuview:subView aboveSubview:view];
//把视图放到最上面
[self.view bringSubviewToFont:view];
//把视图放在最后面
[self.view sendSubviewToBack:view];
//子控件对父控件解除父子关系,如果没有强指针引用,就会被系统清理
[view removeFromSuperview];
//获得被自己管理的子控件
NSArray *array = [self.view subViews];
view.tag = 10;//给视图一个标记,但是不建议在大项目中使用,tag太多会容易忘记,意义不明确
//ARC机制中需不需要关心内存问题?
//必须关心,如果有大量的对象驻留在内存中一样会导致程序性能的下降
//ios MRC/ARC 都是即时性机制/java垃圾回收机制(惰性)
//如果消耗内存过多达到了ios系统分配限额,会给我们的程序主动的发送内存警告,通知我们去进行处理(消耗到40M,110M主动杀掉你的应用)
//一旦收到系统内存警告,那么立即释放掉没有正在使用的对象(视图)