我有一个image
,我希望将其显示为cell
UITableViewController
中的默认图片。由于某种原因,它没有显示出来。
cell.myImageView.image = [UIImage imageNamed:@"R1.jpg"];
1。)这可能是什么问题? 2.)有时下载需要时间,如果是这样,我如何实现延迟加载,以便它同时下载和显示图像?
答案 0 :(得分:0)
使用afnetworking uitools。它具有延迟加载imageview并完美地与tableview一起使用。还具有占位符图像支持和缓存支持。 https://github.com/AFNetworking/AFNetworking/tree/master/UIKit%2BAFNetworking
修改:将占位符图片添加到您的应用源文件。
好答案编辑:
有几件事要检查本地图片无法加载的原因:
UIImage *tempImage=[UIImage imageNamed:@"R1.jpg"];
检查这个' tempImage'为null或为空。这有助于解决您的问题所在(加载资源或在uitableview上显示)。[cell.myImageView setImage:]
方法。Afnetworking流程: 从https://github.com/AFNetworking/AFNetworking下载 您将只使用UIKit + AFNetworking / UIImageView + AFNetworking.h-.m文件,但它具有来自主afnetworking文件夹的referances。检查referances并添加你需要的东西。
将UIImageView + AFNetworking.m导入到您设置单元格图像的类中。
然后你可以使用:
[cell.myImageView setImageWithURL:(NSURL*) placeholderImage:[UIImage imageNamed:@"R1.jpg"]];
答案 1 :(得分:-2)
有一些很酷的库解决了你的问题。
其中一个是SDWebImage。
只需将其添加到您的项目中,然后在tableviewcontroller的实现文件中导入UIImageView + WebCache.h。
在viewDidLoad,viewWillAppear或init中创建一个URL数组,并通过调用
将它们加载到tableView:cellForRowAtIndexPath:方法的单元格中[cell.myImageView sd_setImageWithURL:[arrImageURLs objectAtIndex:indexPath.row]]
[NSURL fileURLWithPath:path2image]获取网址