2009-11-23 56 views
1

有時我的應用程序需要在啓動後立即呈現模態視圖。我在我的主視圖控制器showEntryView上有一個方法,它可以響應按鈕按下而成功顯示模態視圖。我也打電話showEntryView當我的主視圖控制器收到viewDidLoad,但在這種情況下,視圖不會出現。需要在應用程序啓動時立即呈現模態視圖,但不會出現

直覺表明我試圖提前模式視圖太早 - 我應該在收到viewDidLoad後呈現它。但當?

回答

2

我的直覺告訴我,你的模態視圖應該在你的主視圖控制器上顯示-viewDidAppear。然而,沒有進一步的代碼,這就是我所擁有的。

-viewDidLoad可能在-applicationDidFinishLaunching之前就已經發生很久 - 特別是如果它被定義爲plist中的Main Nib文件 - 並且應用程序可能在此時並不處於非常健全的狀態。允許你的主視圖控制器出現,然後顯示你的模態...這意味着-viewDidAppear(或-viewWillAppear)。

+0

viewDidLoad非常棒!我不得不添加一個標誌來跟蹤我是否處理了第一個viewDidAppear,以便我不會持續呈現模式視圖(模式視圖將關閉,而我的主控制器將再次接收viewDidAppear)。一小筆費用。 – 2009-11-23 00:57:53

相關問題