[英]In what order are view methods called when transitioning from one view controller to another?
當我從一個視圖控制器(讓我們稱之為MasterViewController
)轉換到另一個視圖控制器(稱為DetailViewController
)時,每個控制器上的viewWillDisappear:
, viewWillAppear:
等方法的調用順序是什么?
我懷疑當我的主視圖消失時調用的一些清理代碼會干擾我的詳細視圖中的初始化代碼。 我查看了Apple的文檔,但找不到任何涉及多個視圖控制器的信息。
我創建了一個簡單的基於UINavigationController的項目,並添加了一些NSLog
語句來找出它們被調用的順序。
prepareForSegue:
viewDidLoad
viewWillDisappear:
viewWillAppear:
viewDidDisappear:
動畫結束后) viewDidAppear:
但是,使用UITabViewController
在視圖之間切換時,順序是不同的:
viewDidLoad
viewWillAppear:
viewWillDisappear:
viewDidDisappear:
viewDidAppear:
因此,您似乎無法始終依賴於以相同順序發生的這些事件 - 它可能會根據您正在轉換的視圖控制器的性質而有所不同。
我在這里錯過了什么重點嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.