我创建了一个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