每一個view都有一個viewController。且view的生命週期也在viewController裏面。因此在view釋放以前,viewcontroller是不能夠釋放的。那viewController的生命週期究竟是怎麼樣的呢?和我一步一步來看吧。app
step1:initWithNib viewController 會進行alloc,並init.函數
step2: loadView 在這裏會看它的子類是否有重寫這個函數,若是重寫了則調用子類的,不然就調用她本身的。注意,這個時候視圖仍是沒有沒加載進來的哦。spa
step3:viewDidLoad 這個時候視圖已經存在了。能夠在這裏添加你想要添加的UI控件了。生命週期
step4:viewWillAppear 視圖將出如今屏幕上了內存
step5:viewDidAppear 視圖已經成功在屏幕上渲染完成了it
step6:viewWillDisappear 視圖將要消失了渲染
step7:viewDidDisappear 視圖從屏幕上消失了view
step8:viewDidUnLoad 當發生內存警告的時候,若是本視圖不是當前正在顯示的視圖,則會執行這個函數。將子視圖釋放。vi
step9:dealloc 釋放viewControllerco
而view的生命週期則是step3~step8.