动画的图像尺寸!
Posted
技术标签:
【中文标题】动画的图像尺寸!【英文标题】:Image Size for Animation! 【发布时间】:2010-04-26 11:21:21 【问题描述】:我是 iphone 应用程序开发的新手,我需要一些帮助。我有一个包含 30 张图像的列表,我必须以 0.1 秒的间隔对其进行动画处理和显示。 我使用这个将所有图像放在一个数组中
imageletter.animationImages = [NSArray arrayWithObjects:[UIImage imageNamed:@"1.png"], ...... ,nil]
然后使用这些语句对其进行动画处理,
[imageletter setAnimationDuration:16];
[imageletter startAnimating];
[NSTimer scheduledTimerWithTimeInterval:mytime target:self selector:@selector(StopAfterCertainTime) userInfo:nil repeats:NO];
现在的问题是每个图像的大小是 8kb ,它在 iphone 模拟器上运行良好,但在设备上崩溃。当我使用 30 个其他 4kb 的图像时,它在模拟器和设备上都运行良好。谁能告诉我这种任务的理想尺寸是多少。 谢谢
【问题讨论】:
【参考方案1】:我建议您首先弄清楚 为什么它会在设备上崩溃(例如,查看堆栈回溯)。 30 张 8kb 的图像听起来并不像很多空间(240kb,对吧?),所以这不太可能是直接的“内存不足”情况。
更有可能存在对您分配的对象大小敏感的更深层次的问题(例如,在对象被释放后继续使用它)。如果是这样,使用较小的图像并不能解决问题,它只会隐藏它(暂时)。
查看 iPhone 开发指南的 Debugging Applications 部分,了解有关查看崩溃日志的信息,以及如何设置 NSZombieEnabled
以检测对已释放对象的访问。
【讨论】:
压缩后的图片大小可能为8 kb,但这些图片的未压缩版本用于实际显示时可能比这大得多。通过查看内存监视器工具,您应该能够了解这是否会导致显着的内存峰值。以上是关于动画的图像尺寸!的主要内容,如果未能解决你的问题,请参考以下文章