2013-06-26 26 views
0

由於視圖控制器被推送到導航堆棧而不是當模式消失時,是否有內置方式(而不是使用我自己的標記)來區分何時調用viewDidAppear如何區分何時調用viewDidAppear

換句話說,我需要執行代碼,當視圖出現時,只有當它被推送到導航堆棧。當我執行操作時,我將呈現一個視圖控制器並自動解除它。解散後,viewDidAppear再次被調用,進入無限循環。

我該如何避免這種無限循環?

此問題與模式viewController有關,而不涉及來自和通過導航viewController

+2

檢查時關閉該視圖控制器'viewDidLoad'被調用。 – danypata

+0

@danypata由於'viewDidLoad'只被調用一次,並且在第一次調用'viewDidAppear'之前調用,因此檢查'viewDidLoad'不是解決方案。 – rmaddy

+0

@ A-Live編輯說視圖控制器 –

回答

0

如果您要定位的iOS> = 5.0使用這種方法在viewDidAppear:

[self isMovingToParentViewController] 
+0

isMovingToParentViewController在兩種情況下都是true! –

+0

這種情況不應該發生...... – lassej

+0

除非在同一個RunLoop循環中顯示和解除其他視圖控制器,否則不應該這樣做。你在做那個嗎? – lassej

相關問題