2014-08-27 99 views
1

我正在使用AfNetworking版本〜> 1.3.4,它是由cocoaPods添加的。我無法升級到2.0,因爲我的應用程序中使用了大多數方法。刪除圖像緩存

AFImageCache(在的UIImageView + AFNetworking)時具有相同URL的新圖像被用於

不能被清除我應該添加以下方法中的「的UIImageView + AFNetworking」類此。

+ (void)clearCachedImages { 
    [[[self class] af_sharedImageCache] removeAllObjects]; 
} 

由於AFNetworking是在我的cocoaPods。我無法添加。 請幫我如何通過類別/子類添加此方法?

編輯:

我曾嘗試以下

@class AFImageCache; 

@interface SPUtility : NSObject 
{ 

} 
@end 

@implementation SPUtility 

+ (void)clearCachedImages { 
    [[AFImageCache af_sharedImageCache] removeAllObjects]; //shows following error 
} 
@end 

錯誤:沒有已知的類方法用於選擇 'af_sharedImageCache' 2.接收 'AFImageCache' 的類消息爲轉發宣言

+0

你爲什麼無法添加。轉到pod項目並打開該文件並添加此方法。如果我更新吊艙,我的方法將會丟棄,您將面臨哪些困難 – 2014-08-27 10:36:29

+0

becoz。它會回到原來的。 – Myaaoonn 2014-08-27 10:57:24

回答

3

作爲UIImageView的一個類別,因爲您的af_sharedImageCache在​​

SPUtility.m

@interface UIImageView (MyMethods) 
+ (NSCache *)af_sharedImageCache; 
@end 
//you don't have to implement method since it's already defined in UIImageView (AFNetworking) 
//It's just for the happiness of the compiler 



@implementation SPUtility 

+ (void)clearCachedImages { 
    [[UIImageView af_sharedImageCache] removeAllObjects]; 
} 
@end 
+0

它顯示我:「af_sharedImageCache」找不到。可以plz具體。 – Myaaoonn 2014-08-27 11:07:43

+0

是的,因爲它沒有在頭文件中聲明,所以只是忽略警告 – 2014-08-27 11:10:33

+0

請檢查上面的編輯部分.. @Inder – Myaaoonn 2014-08-27 11:21:19