代码改变世界

iPhone开发笔记(20)EGOImageView的使用方法及注意事项

2013-07-23 17:54  Mr.Xer  阅读(431)  评论(0编辑  收藏  举报

  EGOImageView是一种实现网络图片的异步加载和缓存的第三方类库,具有相同功能的第三方类库还有SDWebImage。但是相比两个类库的安装和使用来说,EGOImageView更简单一些,下面就介绍一下EGOImageView的使用方法:

    1、下载EGOImageView及其相关的类库

    EGOImageLoading

    将EGOCache、EGOImageButton、EGOImageView、EGOImageLoader全部添加到工程下(拷贝)

    2、EGOImagView使用代码如下    

 

[plain] view plaincopy
  1. EGOImageView *imageView = [[EGOImageView alloc] initWithPlaceholderImage:[UIImage imageNamed:@"placeholder.png"]];  
  2. imageView.imageURL = [NSURL URLWithString:@"http://....../images/1.jpg"];  
  3. imageView.frame = CGRectMake(x,x,x,x);  
  4. [self.view addSubView:imageView];  

    placeholder.png是加载图片未完成时显示的图片,当加载过程完成之后就会显示url对应的图片。     

 


    3、需要特别注意的是EGOImageView的一个非常奇葩的Bug

    当imageView的图片加载完成了,这时你想换一个图片的url并用EGOImageView加载这个图片时,需要重新设置EGOImageView的imageURL属性。但是这里要特别注意的是这个方法必须在主线程中执行,找到这个Bug我费了很大的劲,在用英文的Google搜索了好几页才找到一位同是天涯沦落人的Coder,于是有了下面的代码

 

[plain] view plaincopy
    1. [imageView performSelectorOnMainThread:@selector(setImageURL:) withObject:[NSURL URLWithString:@"http://....../images/2.jpg"] waitUntilDone:NO];  

转载自:http://blog.csdn.net/kbawyg/article/details/8092946