【问题标题】:Measure the memory usage of an UIImage array测量 UIImage 数组的内存使用情况
【发布时间】:2013-05-21 07:51:33
【问题描述】:

我正在实现一个自定义控件来呈现图像,该控件使用一个数组来存储UIImageNSString 对象。我想实现这样一种机制:如果内存使用率高,控件会将一些大的UIImage对象写入文件,然后将UIImage对象替换为其对应的文件路径(NSString对象)。

所以唯一的问题是如何测量UIImage 的内存使用情况?谢谢!

【问题讨论】:

  • 这通常是这个高抽象层的错误方法 (UIImage)。 UIImage 可以在内存不足的情况下执行缓存和清除——所有这些都无需您的干预。最好只加载您真正需要的内容并使用适当大小的表示。您可能会惊讶于一个应用真正需要在内存中的图片有多少,以及有多少应用一次加载到内存中。
  • 感谢您的解释,现在我知道如何处理这种情况了。

标签: objective-c uiimage


【解决方案1】:

每当您的代码使用内存部分时,它会调用- (void)didReceiveMemoryWarning 方法为 ios 生成问题。所以你必须在这个方法中做转换部分。

【讨论】:

  • 谢谢!但对于我的情况来说,为时已晚。要知道,要将UIImage对象保存到文件中,我们需要先将其转换为NSData对象,这非常消耗内存,在-(void)didReceiveMemoryWarning中进行这样的操作可能会导致应用程序崩溃
最近更新 更多