我意識到我可以分層展示模態視圖。 當存在時,通過使用以下模態視圖的界限是什麼?
presentModalViewController列出的選擇器幾個模態的觀點:動畫:
(該結構的層次結構應該是這樣的A-> B-> C-> D- > F ........)
假設我創建了大量的模態視圖,其中每個視圖都有相當多的內容。 我怎麼知道我是否達到了內存的限制?如果應用程序進入「暫停」狀態並收到低內存警告。
如果用戶重新啓動應用程序會發生什麼?
我意識到我可以分層展示模態視圖。 當存在時,通過使用以下模態視圖的界限是什麼?
presentModalViewController列出的選擇器幾個模態的觀點:動畫:
(該結構的層次結構應該是這樣的A-> B-> C-> D- > F ........)
假設我創建了大量的模態視圖,其中每個視圖都有相當多的內容。 我怎麼知道我是否達到了內存的限制?如果應用程序進入「暫停」狀態並收到低內存警告。
如果用戶重新啓動應用程序會發生什麼?
處置一個模態視圖控制器,並提出了一個又一個的方式是,只有最後一個動畫:
[self dismissModalViewControllerAnimated:NO];
[self presentModalViewController:controllerB
animated:YES];
模態視圖沒有限制(我不知道它) - 只是記憶。而且你不能檢查你是否有足夠的內存。系統會通過記憶警告告訴你何時達到極限。
你對重新啓動有什麼意義?暫停&恢復?如果是,沒有。殺死&新鮮開始?沒有模態視圖,除非你再次出現。
完成此任務的最佳方法是釋放在顯示時可以在A中重新創建的所有對象B.在C中顯示時依次釋放B中等等。但是這取決於你想在其中顯示什麼(換句話說,每個視圖控制器使用的內存量)。
我也想避免內存泄漏。如果我顯示B並且不再需要A。我怎樣才能釋放A? –
解散A並呈現B.答案將被釋放。 – robertvojta
我該怎麼做到這一點?像「[self presentModalViewController:B animated:YES]; [self dismissModalViewControllerAnimated:YES];」 ? –