viewDidLoad, viewWillDisappear, viewWillAppear等區別及各自的加載順序


viewWillAppear:視圖即將可見時調用。默認情況下不執行任何操作

viewDidAppear:視圖已完全過渡到屏幕上時調用

viewWillDisappear:Calledafter the view was dismissed, covered or otherwise hidden. Defaultdoesnothing視圖被駁回后調用,覆蓋或以其他方式隱藏。默認情況下不執行任何操作loadView;Thisis where subclasses should create their custom view hierarchy ifthey aren't using a nib. Should never be calleddirectly.這是當他們沒有正在使用nib視圖頁面,子類將會創建自己的自定義視圖層。絕不能直接調用。
viewDidLoad:在視圖加載后被調用,如果是在代碼中創建的視圖加載器,他將會在loadView方法后被調用,如果是從nib視圖頁面輸出,他將會在視圖設置好后后被調用。

viewWillAppear:當收到視圖在視窗將可見時的通知會呼叫的方法

viewDidAppear:當收到視圖在視窗已可見時的通知會呼叫的方法

viewWillDisappear:當收到視圖將去除、被覆蓋或隱藏於視窗時的通知會呼叫的方法

viewDidDisappear:當收到視圖已去除、被覆蓋或隱藏於視窗時的通知會呼叫的方法

didReceiveMemoryWarning:收到系統傳來的內存警告通知后會執行的方法

shouldAutorotateToInterfaceOrientation:是否支持不同方向的旋轉視圖

willAnimateRotationToInterfaceOrientation:在進行旋轉視圖前的會執行的方法(用於調整旋轉視圖之用)


代碼的執行順序

1、alloc創建對象,分配空間

2、init (initWithNibName) 初始化對象,初始化數據

3、loadView從nib載入視圖,通常這一步不需要去干涉。除非你沒有使用xib文件創建視圖

4、viewDidLoad載入完成,可以進行自定義數據以及動態創建其他控件

5、viewWillAppear視圖將出現在屏幕之前,馬上這個視圖就會被展現在屏幕上了

6、viewDidAppear視圖已在屏幕上渲染完成 當一個視圖被移除屏幕並且銷毀的時候的執行順序,這個順序差不多和上面的相反

1、viewWillDisappear視圖將被從屏幕上移除之前執行

2、viewDidDisappear視圖已經被從屏幕上移除,用戶看不到這個視圖了

3、dealloc視圖被銷毀,此處需要對你在init和viewDidLoad中創建的對象進行釋放


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM