我創建了一個navigationcontroller其中一個視圖控制器可能會被推多次..for例如,如果我們說,我們已經創建了一個視圖控制器與內存位置<x1234>
和我在指數5索引一次加一次7 ...記憶呢?它會在一段時間後崩潰還是沒有問題,因爲我總是使用同一個對象?uinavigation控制器堆疊存儲管理
1
A
回答
0
您水溼添加一個視圖控制器幾次到一個堆棧。但是您可以創建多個實例(它們將具有不同的內存位置)並將它們推入導航堆棧。當然,如果你將創建> 1000個實例,那麼你的應用程序將崩潰。實際上,堆棧通常包含1-10個視圖控制器,並且所有工作都正常。
1
你不能推完全相同的對象到導航控制器堆棧more than once:
重要在iOS版2.2和更高版本,如果在的viewController 參數的對象已經是導航堆棧上,這種方法拋出一個 異常。在iOS的早期版本中,該方法根本不做任何事情。
但是你可以把不同的場合的同一視圖控制器。
的iOS將發送內存警告(在這裏你可以清除任何臨時存儲,您可以重新創建),並卸載不可見的任何意見。這意味着新視圖控制器的開銷相對較小,但不爲零。有是超過這個限制,你會得到問題,但在實踐中,只要你正確地遵守內存管理規則,它是非常高的。當然高於製作可用UI所施加的限制。
相關問題
- 1. 堆疊視圖控制器
- 2. 監控UINavigation堆棧
- 3. iPhone UINavigation控制器xcode 4
- 4. 在uinavigation控制器層次
- 5. UINavigation控制器和委託
- 6. iPhone - 重置UINavigation控制器
- 7. UINavigation控制器問題
- 8. MVC3控制器堆疊授權
- 9. iPhone:噹噹壓入UINavigation控制器堆棧
- 10. 去除UINavigation特定視圖控制器堆棧不在iOS的
- 11. 查看控制器/內存管理
- 12. 視圖控制器內存管理iOS
- 13. iPad視圖控制器內存管理
- 14. UINavigation控制研究
- 15. 陣列,存儲器管理
- 16. 存儲器管理保留
- 17. 靜態存儲器管理
- 18. Java堆空間內存的wtih WebSphere管理控制檯
- 19. 管理構建控制器
- 20. Codeigniter A3M管理控制器
- 21. 從UINavigation Controller到Segue的另一個UINavigation控制器
- 22. 將MvvmCross選項卡控制器包裝到UINavigation控制器中?
- 23. UInavigation控制器不工作切換視圖控制器到tableviewcontroller
- 24. 堆碎片和Windows內存管理器
- 25. Django堆疊內聯管理問題
- 26. UINavigation控制器不與本modelviewcontrolller
- 27. UINavigation控制器隱藏導航欄
- 28. 如何禁用UINavigation控制器
- 29. UINavigation推新的根控制器
- 30. 調整uinavigation控制器中的內容
我想跟蹤堆棧雖然...如果不是這樣會發生控制器陣列? – 2012-02-16 11:36:58
視圖控制器仍在堆棧中。它只是卸載與之相關的視圖。 – 2012-02-16 11:59:32