获取图片的方式
本地图片
通常我们采用
imageView.image = [UIImage imageNamed:@""];
这种方法加载的图片是做了单例化的处理 图片会一直存在于内存中 会占用大量内存 因此只适合用来处理小图标 不适合动态加载大量图片
如果加载大量图片,通常采用下面的方法
NSString *imageFileName = [[NSBundle mainBundle] pathForResource:item.imageName ofType:nil];
imageView.image = [UIImage imageWithContentsOfFile:imageFileName];
网络图片##
// 下面加载图片的方式是同步加载会导致界面出现卡顿或假死的状况
// 为此可以考虑使用异步(非阻塞)方式加载图片
// SDWebImage第三方库就可以实现异步加载本地缓存等功能
//_myImageView.image = [UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:picUrl]]];
// test是占位图片,如果网络不好 数据加载失败就会显示test
[_myImageView sd_setImageWithURL:[NSURL URLWithString:picUrl] placeholderImage:[UIImage sd_animatedGIFNamed:@"test"]];
网友评论