我的iPhone应用程序有内存问题,最终崩溃 - 使用了大量的图像

时间:2010-07-19 06:39:23

标签: iphone memory memory-management

我是编程新手(几个月前学会了如何编写应用程序),并且最近编写了一个应用程序,在大约5分钟后每次都会因为几个“收到内存警告”而崩溃。等级= 1'警告。在使用仪器进行测试时,我无法检测到任何泄漏,我相信我正确地释放了对象,因此我怀疑内存问题源于我使用的大量png图像(大约80)。我尝试从-imageNamed方法更改为-imageWithContentsOfFile并且没有看到真正的改进。如果有人能提供任何提示,我会非常感激,因为我完全陷入困境。

3 个答案:

答案 0 :(得分:0)

内存不足必然意味着内存泄漏。这可能意味着你曾经要求过多的记忆。在您的情况下,您可能正在尝试创建太多同时存在的UIImage个对象。没有看到更多的代码,除了尝试并找到一种方法同时使用更少的图像之外,没有什么可说的。

答案 1 :(得分:0)

假设您使用UIImage加载的imageNamed在可能的情况下卸载其内容,如果它们收到内存警告。 UIImage Reference, see Images and Memory Management这只会留下一个非常小的空UIImage容器。所以我怀疑你还有其他问题。

检查程序中的任何循环,并确保它不会以某种方式泄漏。

答案 2 :(得分:0)

还记得磁盘上的PNG比内存中的相应图像小得多。如果你的PNG很大,你可能会耗尽太多内存。也许你可以延迟加载图像,使你的足迹更小。