当前位置:  开发笔记 > 编程语言 > 正文

如何处理iPhone上的低内存警告?

如何解决《如何处理iPhone上的低内存警告?》经验,为你挑选了1个好方法。

当用户深入导航控制器堆栈视图时,我的应用程序接收到低内存警告时遇到问题.在用户浏览后续UITableViews中的一堆分层选项后,他可以在UIWebView中打开PDF文档(在不同的视图控制器中).

一切正常,PDF加载,用户可以浏览页面.但是,当文档有点大,或者有多个页面,并且用户点击导航控制器中的"后退"按钮时,他的应用程序崩溃,因为导航控制器堆栈中的先前视图控制器已被解除分配.

在寻找处理低内存警告的方法以及处理这类问题之后,我发现了一些帖子,建议人们释放可以释放的对象,然后在用户尝试时稍后加载它们.加载已解除分配的视图.其中一篇文章是Craig Hockenberry的" 处理记忆丧失:清理帖子".

虽然这有点帮助,但它并没有给我很多信息.

有人可以提供一个关于如何处理低内存警告的简单指南,以及如何实现对象的"延迟加载"?



1> Ben Gottlieb..:

当内存不足时,系统会发出一系列与内存相关的消息.任何实例化的视图控制器都将获得-didReceiveMemoryWarning消息.如果不实现此操作,则默认操作(假设视图控制器不是最前面的)是释放控制器的视图成员.如果您有钩子,或者可能进入其子视图,那么当您的控制器返回到堆栈顶部时,这可能会导致问题.

推荐阅读
帆侮听我悄悄说星星
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有