标签:
init跟initialize的区别:
alloc init每创建一个对象,就会调用一次init方法,但是只会调用一次initialize方法,所以确定只用了initialize一次用来实现某些单独运行的工作,或者希望实现仅仅运行一次的方法, 比如:自定义导航栏中,所有导航栏的字体大小颜色都是一样的,就可以在initialize方法中写,只会调用一遍.
loadView和viewDidLoad的区别:
loadView时view还没有生成,viewDidLoad时,view已经生成了,loadView只会被调用一次,而viewDidLoad可能会被调用多次(View可能会被多次加载),当view被添加到其他view中之前,会调用viewWillAppear,之后会调用viewDidAppear。当view从其他view中移除之前,调用viewWillDisAppear,移除之后会调用viewDidDisappear。当view不再使用时,受到内存警告时,ViewController会将view释放并将其指向为nil。
ViewController的生命周期中各方法执行流程如下:
init—>loadView—>viewDidLoad—>viewWillApper—>viewDidApper—>viewWillDisapper—>viewDidDisapper—>viewWillUnload->viewDidUnload—>dealloc
标签:
原文地址:http://www.cnblogs.com/bigshow1949/p/5465054.html