我有一个viewController,因为我使用了Page控件。每个页面都有4个imageViews。
我已经通过了Xml并根据图像数量得到了pageControl的页数(NumberOfImages / 4)。
我已经完成了这样的代码......
首先我得到每个图像的URL并将它们存储在数组中..
for(int i=0;i<[Array Count];i++)
{
imgString=[NSString stringWithFormat:@"%@",[Array objectAtIndex:i]];
NSLog(@"string :%@",imgString);
NSString *abc=[imgString tringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
//NSLog(@"abc :%@",abc);
NSURL *url=[NSURL URLWithString:abc];
NSLog(@"url :%@",url);
NSData *data = [NSData dataWithContentsOfURL:url];
[ImageArray addObject:[UIImage ImageWithData:data]];
}
以上代码需要时间从URL获取图像。直到所有r都没有被提取我必须等待..
所以我想使用Lazy Loading Here ..我已经为TableView显示了苹果延迟加载示例..但是没有获得如何将其用于分页?
所以有人可以建议我能为此做些什么? 任何帮助表示赞赏..
答案 0 :(得分:0)
您可以为UIImageView类创建一个Category,并添加一些允许您执行以下操作的方法:
从tmp目录中的缓存文件加载图像 - 如果找不到缓存文件,请在后台线程上从Web下载图像,然后将其保存到缓存中。
首先检查缓存文件,您可以跳过重新下载内容。
通过在后台线程上下载图像,您的应用程序在等待内容完成加载时不会滞后。
通过使用类别,您的方法将应用于您想要使用的任何UIImageView,甚至可以在分页中使用。
不是在这里发布完整的代码解决方案,而是建议您研究和开发自己的解决方案。
祝你好运。