EGOImageView-缓存问题

来源:互联网 发布:网络借贷平台哪个最快 编辑:程序博客网 时间:2024/06/06 04:32

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];  


4. EGOImageView缓存是会自动清理的,默认的清理周期是一天,清理周期可以自己修改,方法是修改EGOCache类的defaultTimeoutInterval属性,找到EGOCache.m文件的(EGOCache*)currentCache方法,语句__instance.defaultTimeoutInterval = 86400;就是设置清理周期,这里设置是一天(86400秒)。可以修改这个数字来设置清理周期。

5. 也可以在代码中手动清理缓存,代码为:[[EGOCache currentCache] clearCache];。



0 0
原创粉丝点击