前言:
在iOS开发中,控制器的生命周期非常重要,什么时候加载页面,什么时候请求接口,什么时候刷新界面等等,都有很多值得优化的地方
loadView:
最先执行的方法,控制器关联的有Nib文件的时候,该方法会从Nib文件加载view。
ViewDidLoad:
该方法可以用来可以用来初始化控件、也可进行异步的网络请求,该方法在页面出来之前调用,方法在执行结束后,页面才会出现。因此该方法里面不能用来执行耗时的主线程操作。该方法在控制器的整个生命周期中只会调用一次。
ViewWillAppear:
该方法在页面每次出现之前调用,所以该方法可能会调用多次。
ViewWillLayoutSubviews:
该方法在将要布局子控件的时候调用,每次当视图的bounds改变时将会调用。
ViewDidWillLayoutSubviews:
该方法在子控件布局完成后调用
ViewDidAppear:
该方法在页面显示完成之后条用,有一些需要再页面展示出来后执行的代码可以放在该方法中。
ViewWillDisAppear:
该方法在页面即将消失的时候调用,有时候一些通知的移除等操作可以在这个方法里面执行
ViewDidDisAppear:
该方法在页面已经消失的时候调用
didReceiveMemoryWarning:
收到内存警告时调用该方法,可用来执行释放资源、内存等