2010-10-21 62 views
0

我有使用導航控制器的多個UIViewControllers的應用程序。 UIViewController包含tableView,搜索欄(我可以顯示/隱藏)和工具欄。所有這些都作爲子視圖添加到其視圖中。所有這些子視圖都是在UIViewController初始化後創建的,它們的內容依賴於UIVievController的內容。子視圖從UIViewController中消失

它工作正常期待一個問題。當我用我的應用程序玩一點時,來回移動,打開一些模式視圖等有時後導航回我的根VC所有它的子視圖消失,我得到的只是白色屏幕。

我仔細檢查了所有的代碼,我找不到問題的根源(我當然不會自己刪除它們)。我無法找到確切的模板如何重現這一點,它似乎是隨機的。任何想法爲什麼iphone會從VC中刪除我的子視圖?我會發布一些代碼,但我不想把它放在這裏,我不確定哪一部分是重要的,所以如果你想看到一些,請告訴我

+0

您是否收到內存警告? – Jordan 2010-10-21 23:09:42

+0

不,我不知道。那是我嘗試的第一件事,但我沒有使用太多的記憶。稍後我會解決一些泄漏,但它們很小並且內存不是限制 – Lope 2010-10-22 17:54:24

回答

1

在loadView或viewDidLoad中添加您的意見:當viewDidUnload被調用時,視圖被釋放,所以當再次顯示視圖時需要再次創建視圖。

+0

即使控制器仍在導航堆棧中,視圖是否已卸載?我認爲只要他們在堆疊中,他們的觀點不會被公佈......我會嘗試並讓你知道 – Lope 2010-10-22 17:55:20

+0

是的。根據文檔,這可能發生在內存不足的情況下。 – 2010-10-23 06:15:39

+0

看起來你是對的:)謝謝你的幫助! – Lope 2010-10-23 15:30:44