// // Copyright © 2015 dahua. All rights reserved. // // UIImageView扩展,主è¦ç”¨äºŽUIImageViewçš„å›¾ç‰‡ç½‘ç»œåŠ è½½ã€‚ #import <UIKit/UIKit.h> @class AFImageDownloadReceipt; @class AFHTTPSessionManager; @class AFImageDownloader; @class LCError; @interface UIImageView(LeChange) /** * 是å¦éœ€è¦æ”¯æŒgif */ @property(nonatomic, assign, readwrite) BOOL isNeedSupportGif; /// 图片解密需è¦çš„token @property(nonatomic, copy, readwrite) NSString *accessToken; /** * @brief 将图片å˜å‚¨åˆ°ç¡¬ç›˜ * * @param image 图片 * @param imageUrl å˜å‚¨åœ°å€ */ - (void)lc_storeImageToDisk:(UIImage*)image url:(NSString *)imageUrl; /** * åŠ è½½ç¼“å˜å›¾ç‰‡ * * @param imageUrl 图片URL * * @return UIImage 图片 */ - (UIImage *)lc_getImageWithCache:(NSString *)imageUrl; /** * åŠ è½½åŠ å¯†çš„ç½‘ç»œå›¾ç‰‡,ä¸å˜å…¥ç¡¬ç›˜ * */ - (void)lc_setImageWithUrl:(NSString *)url; /** * åŠ è½½åŠ å¯†çš„ç½‘ç»œå›¾ç‰‡,ä¸å˜å…¥ç¡¬ç›˜ * */ - (void)lc_setImageWithUrl:(NSString *)url placeholderImage:(NSString *)placeholder; /** * åŠ è½½åŠ å¯†çš„ç½‘ç»œå›¾ç‰‡ * * @param url 图片url * @param key 密钥 * * @param toDisk 是å¦å°†å›¾ç‰‡å˜åœ¨diskæ–‡ä»¶ä¸ */ - (void)lc_setImageWithUrl:(NSString *)url aesKey:(NSString *)key deviceID:(NSString *)deviceID devicePwd:(NSString *)devicePwd toDisk:(BOOL)toDisk; /** * åŠ è½½ç½‘ç»œå›¾ç‰‡ * * @param url 图片url */ - (void)lc_setImageWithUrl:(NSString *)url toDisk:(BOOL)toDisk; /** * åŠ è½½ç½‘ç»œå›¾ç‰‡ * * @param url 图片url * @param placeholder 默认图片åç§° * @param toDisk 是å¦å°†å›¾ç‰‡å˜åœ¨diskæ–‡ä»¶ä¸ */ - (void)lc_setImageWithUrl:(NSString *)url placeholderImage:(NSString *)placeholder toDisk:(BOOL)toDisk; /** åŠ è½½åŠ å¯†çš„ç½‘ç»œå›¾ç‰‡ï¼Œä¸ä¿å˜åœ¨diskä¸ @param url 图片url @param placeholder 默认图片åç§° @param key 密钥 */ - (void)lc_setImageWithUrl:(NSString *)url placeholderImage:(NSString *)placeholder aesKey:(NSString *)key deviceID:(NSString *)deviceID devicePwd:(NSString *)devicePwd; /** * åŠ è½½åŠ å¯†çš„ç½‘ç»œå›¾ç‰‡ * * @param url 图片url * @param placeholder 默认图片åç§° * @param key 密钥 * @param toDisk 是å¦å°†å›¾ç‰‡å˜åœ¨diskæ–‡ä»¶ä¸ */ - (void)lc_setImageWithUrl:(NSString *)url placeholderImage:(NSString *)placeholder aesKey:(NSString *)key deviceID:(NSString *)deviceID devicePwd:(NSString *)devicePwd toDisk:(BOOL)toDisk; /** * åŠ è½½åŠ å¯†çš„ç½‘ç»œå›¾ç‰‡ * * @param url 图片url * @param placeholder 默认图片åç§° * @param key 密钥 * @param toDisk 是å¦å°†å›¾ç‰‡å˜åœ¨diskæ–‡ä»¶ä¸ * @param success åŠ è½½æˆåŠŸå›žè°ƒ * @param fail åŠ è½½å¤±è´¥å›žè°ƒ */ - (void)lc_setImageWithUrl:(NSString *)url placeholderImage:(NSString *)placeholder aesKey:(NSString *)key deviceID:(NSString *)deviceID devicePwd:(NSString *)devicePwd toDisk:(BOOL)toDisk success:(void (^)(void))success fail:(void (^)(LCError *error))fail; /** * åŠ è½½åŠ å¯†çš„ç½‘ç»œå›¾ç‰‡,å³ä½¿æœ‰ç¼“å˜ä¹Ÿéœ€è¦ä»Žç½‘ç»œåŠ è½½å›¾ç‰‡ * * @param url 图片url * @param placeholder 默认图片åç§° * @param key 密钥 * @param toDisk 是å¦å°†å›¾ç‰‡å˜åœ¨diskæ–‡ä»¶ä¸ * @param success åŠ è½½æˆåŠŸå›žè°ƒ * @param fail åŠ è½½å¤±è´¥å›žè°ƒ */ - (void)lc_setImageFromNetWithUrl:(NSString *)url placeholderImage:(NSString *)placeholder aesKey:(NSString *)key deviceID:(NSString *)deviceID devicePwd:(NSString *)devicePwd toDisk:(BOOL)toDisk success:(void (^)(void))success fail:(void (^)(LCError *error))fail; /** * 先以customKey进行解密图片,如果密ç ä¸åŒ¹é…,å†ä»¥é»˜è®¤çš„defaultKey(一股设置为设备åºåˆ—å·ï¼‰è¿›è¡Œè§£å¯†ï¼›å¦‚æžœ customKey为空,直接以defaultKey解密 * * @param url 图片url * @param placeholder 默认图片 * @param isNewEncrypt æ˜¯å¦æ˜¯æ–°åŠ å¯†æ–¹å¼(三ç åˆä¸€) * @param customKey 自定义key * @param defaultKey 默认key,为设备åºåˆ—å· * @param deviceID 设备åºåˆ—å· * @param toDisk 是å¦ä¿å˜åˆ°ç¡¬ç›˜ * @param success æˆåŠŸçš„å›žè°ƒ * @param fail 失败的回调 */ - (void)lc_setEncryptImageWithUrl:(NSString *)url placeholder:(NSString *)placeholder isNewEncrypt:(BOOL)isNewEncrypt customKey:(NSString *)customKey defaultKey:(NSString *)defaultKey deviceID:(NSString *)deviceID toDisk:(BOOL)toDisk success:(void (^)(NSString *correctKey))success fail:(void (^)(LCError *error))fail; /** åŠ è½½å›¾ç‰‡ @param url å›¾ç‰‡åœ°å€ @param placeholder 默认图片 @param isNewEncrypt æ˜¯å¦æ˜¯æ–°åŠ å¯†æ–¹å¼(三ç åˆä¸€) @param customKey 自定义秘钥 @param defaultKey 默认秘钥 @param deviceID 设备åºåˆ—å· @param toDisk 是å¦å˜å‚¨åˆ°ç¡¬ç›˜ */ - (void)lc_setEncryptImageWithUrl:(NSString *)url placeholder:(NSString *)placeholder isNewEncrypt:(BOOL)isNewEncrypt customKey:(NSString *)customKey defaultKey:(NSString *)defaultKey deviceID:(NSString *)deviceID toDisk:(BOOL)toDisk; /** åŠ è½½å›¾ç‰‡ @param url å›¾ç‰‡åœ°å€ @param placeholder 默认图片 @param isNewEncrypt æ˜¯å¦æ˜¯æ–°åŠ å¯†æ–¹å¼(三ç åˆä¸€) @param errorImage 解密失败的图片 @param customKey 自定义密ç @param defaultKey 默认密ç @param deviceID 设备åºåˆ—å· @param toDisk 是å¦å˜å‚¨åˆ°ç¡¬ç›˜ */ - (void)lc_setEncryptImageWithUrl:(NSString *)url placeholder:(NSString *)placeholder isNewEncrypt:(BOOL)isNewEncrypt errorImage:(NSString *)errorImage customKey:(NSString *)customKey defaultKey:(NSString *)defaultKey deviceID:(NSString *)deviceID toDisk:(BOOL)toDisk; /** 压缩图片 @param filePath å›¾ç‰‡åœ°å€ */ + (void)lc_compressImageWithPath:(NSString *)filePath; @end #pragma mark - UIImageView(_Helper) @interface UIImageView (_AFNetworking) @property (readwrite, nonatomic, strong, setter = af_setActiveImageDownloadReceipt:) AFImageDownloadReceipt *af_activeImageDownloadReceipt; @property (readwrite, nonatomic, strong, setter = af_setURLSessionTask:) NSURLSessionDataTask *af_URLSessionTask; + (AFImageDownloader *)sharedImageDownloader; - (void)cancelImageDownloadTask; - (void)clearActiveDownloadInformation; - (BOOL)isActiveTaskURLEqualToURL:(NSString *)url; - (NSURLSessionDataTask *)af_URLSessionTask; - (AFHTTPSessionManager *)sessionManager; @end