initWithNibName:bundle:
初始化UIViewController.也可以自定義init方法雷酪。但是在寫自定義init方法。先要調(diào)用[super initWithNibName:nil bundle:nil]蔗怠。
loadView ? ? ??訪問viewcontroller的view時吩跋,如果view為nil會自動調(diào)用該方法。
viewDidLoad ?? 當(dāng)該控制器管理的視圖被裝載完成后桥温,系統(tǒng)自動調(diào)用該方法梁丘。重寫該方法時要先調(diào)用[super viewDidLoad]。
viewWillAppear 當(dāng)該控制器管理的視圖將要顯示出來時兰吟,系統(tǒng)自動調(diào)用該方法。
viewDidAppear 當(dāng)該控制器視圖的視圖顯示出來后履腋,系統(tǒng)自動調(diào)用該方法惭嚣。
viewWillLayoutSubviews 當(dāng)該控制器管理的視圖將要排列它包含的所有子視圖時,系統(tǒng)自動調(diào)用該方法延旧。
viewDidLayoutSubviews 當(dāng)該控制器管理的視圖把它包含的所有子視圖排列完成后槽地,系統(tǒng)自動調(diào)用該方法芦瘾。
ViewWillDisappear 當(dāng)該控制器管理的視圖將要被隱藏或者將要被移出窗口時集畅,系統(tǒng)自動調(diào)用該方法。
還有就是viewDidDisappear.
那么使用storyboard布局界面時祷愉,在viewDidLoad訪問空間為nil的問題已經(jīng)很明顯了赦颇。因?yàn)樵趕toryboard中使用約束來布局。在viewDidLoad函數(shù)中媒怯,各空間的排列還沒完成,自然是訪問不到了躯嫉。