如何解决目标C:应用程序获得内存警告级别2,并在
|之后不久退出 我的应用程序从服务器获取照片图像并将其存储在一个数组中,该数组最终将显示在UITableView Controller中。 我在一个单元格中显示2张图像(768 x 768像素和100 X 100像素)。 在启动时,该应用程序将加载10个带有图像的单元格,用户可以使用“加载更多”按钮选择加载接下来的10张照片。通常,在单击15-20次“加载更多”后,我会收到一条内存警告级别= 2的消息,并且我的应用程序将终止。 这是因为显示的图像过多吗?我该如何解决这个问题?解决方法
查看我最近的SO问题/答案。我认为这可能会有所帮助。我使用了一个名为PNGCrush的批处理文件来粉碎/压缩我的PNG文件,而不会降低质量。我的应用程序的内存占用从约60 Mb增至约30 MB。正如Jhaliya所说,24 MB的图像可能是导致内存警告的原因(这就是我的应用程序中发生的事情)。
我的StackOverflow.com帖子
, 这是由于您从网上下载的要显示在UITableView单元格中的图像大小所致。
崩溃的解决方法只有一种,那就是尽可能减少图像的大小。
@damian:根据您的计算:
1张图片= 2.4 mb,然后10张图片= 24 mb:
我认为,在您的应用程序中包含10个此类图像后,下一个大小为2.4 mb的图像足以触发级别2的内存警告。
, 从您的描述中很难分辨一次屏幕上正在显示什么。如果一次只显示一对图像,则可以将其余图像缓存在磁盘上,而不是将它们保留在内存中。如果要显示缩略图,则可以再次将完整大小的图像缓存在磁盘上,但是应该可以将所有较小的缩略图保留在内存中。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。