Files
peko-ios/YuMi/CustomUI/UIImageView/NetImageView.h
2024-03-26 15:09:58 +08:00

38 lines
1.1 KiB
Objective-C

//
// NetImageView.h
// YUMI
//
// Created by zu on 2021/11/2.
//
#import <UIKit/UIKit.h>
#import "UIImageConstant.h"
#import "NetImageConfig.h"
NS_ASSUME_NONNULL_BEGIN
typedef void(^LoadCompletion)(UIImage *_Nullable image, NSURL * url);
typedef void(^LoadFail)(NSError *error);
typedef NS_ENUM(NSInteger, NetImageState){
NetImageStateUnload = 1,
NetImageStateLoading,
NetImageStateLoaded,
};
@interface NetImageView : UIImageView
@property (nonatomic, assign, readonly) NetImageState state;
@property (nonatomic, copy) NSString* imageUrl;
- (instancetype)initWithUrl:(NSString * _Nonnull)imageUrl;
- (instancetype)initWithConfig:(NetImageConfig * _Nullable)config;
- (instancetype)initWithUrl:(NSString * _Nonnull)imageUrl config:(NetImageConfig * _Nullable)config;
- (void)loadImage:(LoadCompletion _Nullable)completion;
- (void)loadImageWithUrl:(NSString * _Nonnull)imageUrl completion:(LoadCompletion _Nullable)completion;
- (void)loadImageWithUrl:(NSString * _Nonnull)imageUrl completion:(LoadCompletion)completion fail:(LoadFail)fail;
@end
NS_ASSUME_NONNULL_END