EGOImageView是一种实现网络图片的异步加载和缓存的第三方类库,具有相同功能的第三方类库还有SDWebImage。但是相比两个类库的安装和使用来说,EGOImageView更简单一些,下面就介绍一下EGOImageView的使用方法:
1、下载EGOImageView及其相关的类库
将EGOCache、EGOImageButton、EGOImageView、EGOImageLoader全部添加到工程下(拷贝)
2、EGOImagView使用代码如下
EGOImageView *imageView = [[EGOImageView alloc] initWithPlaceholderImage:[UIImage imageNamed:@"placeholder.png"]];
imageView.imageURL = [NSURL URLWithString:@"http://....../images/1.jpg"];
imageView.frame = CGRectMake(x,x,x,x);
[self.view addSubView:imageView];
placeholder.png是加载图片未完成时显示的图片,当加载过程完成之后就会显示url对应的图片。
3、需要特别注意的是EGOImageView的一个非常奇葩的Bug
当imageView的图片加载完成了,这时你想换一个图片的url并用EGOImageView加载这个图片时,需要重新设置EGOImageView的imageURL属性。但是这里要特别注意的是这个方法必须在主线程中执行,找到这个Bug我费了很大的劲,在用英文的Google搜索了好几页才找到一位同是天涯沦落人的Coder,于是有了下面的代码
[imageView performSelectorOnMainThread:@selector(setImageURL:) withObject:[NSURL URLWithString:@"http://....../images/2.jpg"] waitUntilDone:NO];