在加载完整图像之前使用占位符图像

时间:2011-03-01 08:59:09

标签: iphone

使用占位符图片的正确方法是什么?

我想用图像填充UIScrollView作为子视图,但是在显示滚动视图之前,旧版设备上的所有完整图像都已加载。

如何使用占位符图像,以便在用户滚动到该contentOffset时可以加载完整图像?

我尝试使用ALAsset的缩略图,但缩放看起来很糟糕。

1 个答案:

答案 0 :(得分:2)

假设您正在为图像切片使用UIImageView子视图。开始时,您可以像这样填充UIImageView子视图:

 for each tile location in myScrollView area:
    [myScrollView addSubview:[UIImageView 
       initWithImage:[UIImage imageNamed:@"placeholder.png"]]];

这里的关键是imageNamed在幕后进行缓存(参见SDK文档),内存中只存在一个实际的placeholder.png图像。

在您对UIScrollView事件的委托中,当用户滚动并确定未加载其内容的新磁贴时,启动加载过程并替换该位置的UIImageView(删除占位符,添加正确的一个) )。

显然,您可能希望在某些时候卸载旧的图像切片以节省内存。