回答

2

當前視圖控制器保持在「下面」的模式視圖控制器會重新出現,當你調用

- (void)dismissModalViewControllerAnimated:(BOOL)animated 

無論是在模式視圖或父/展示視圖控制器(如父/展示視圖控制器的看法不再可見,它的視圖可能在系統需要內存時卸載,並在關閉時重新加載)。

從這個方法的文檔:

父視圖控制器負責貶提出使用 presentModalViewController模態 視圖控制器:動畫:方法。但是,如果在模態視圖控制器本身上調用此方法 ,則模式視圖控制器會自動將消息轉發給其父視圖控制器 。

如果呈現在連續的幾個模態的視圖控制器,並且因此 構建模態視圖控制器的堆疊,調用一個視圖此方法 控制器下在堆棧駁回其直接子視圖 控制器和上述所有的視圖控制器孩子在堆棧上。 發生這種情況時,只有最上面的視圖以動畫 方式被解除;任何中間視圖控制器都會從 堆棧中簡單地刪除。最頂端的視圖使用其模式轉換 樣式被忽略,這可能與堆棧中較低的其他視圖控制器 使用的樣式不同。

還要注意在iOS 5中

此前的iOS 5.0的變化,如果視圖沒有和 正在模態呈現父視圖控制器,這是呈現 它會在視圖控制器被退回。這已不再是這種情況。您可以使用presentsViewController 屬性獲取 呈現視圖控制器。

+0

明白!謝謝!你能告訴我一種方法來動態加載uiviewcontroller,而不必回到調用當前視圖的視圖嗎? :)我希望已經形成了答案 – JackTurky

+0

你沒有「責任」回到當前,你可以永遠不要調用dismiss方法。或者您可以使用UINavigationController來推送/彈出UIViewControllers(如果您在Google中查找它們,可以使用一些教程)。 – jbat100

+0

如果我不叫解僱..和我總是使用presentmodalviewcontroller從uiviewcontroller更改是正確的?無需任何時間調用解除 – JackTurky

相關問題