UITableView上的UIImages?

时间:2010-06-06 00:02:36

标签: iphone objective-c cocoa-touch

UITableView ..

中显示约300 png图像的最佳方法是什么?

我不想同时显示它们...我有3个tableViewControllers,每个将显示大约100个imga ..(它的目录,所以图像很重要显示) 我使用[uiimage imageNamed:]但该方法缓存图像并且它们不会被释放因此内存使用量很大....当导航控制器推送不同的视图控制器时,有没有办法释放缓存?

我也试过[uiimage alloc] initWithContentsOfFile],但图片不会显示....

任何帮助?

1 个答案:

答案 0 :(得分:1)

[UIImage imageNamed:@"foo.png"];

相当于

[[[UIImage alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"foo" ofType:@"png"]] autorelease];

除了它不缓存图像。

如果您编写自己的缓存功能,则可以随时清除它。需要图像时,请按名称检查NSMutableDictionary。如果它不存在,请正常加载图像并将其添加到字典中,并将名称作为键。要刷新缓存,请从字典中删除所有对象。