BHImagePickedView
选择图片后用于展示、添加和删除图片的小控件。
依赖
TZImagePickerController (3.2.1)
Masonry (1.1.0)
安装
pod 'BHImagePickedView'
使用
使用默认配置初始化
#import <Masonry.h>
#import <BHImagePickedView.h>
BHImagePickedView *pick = [[BHImagePickedView alloc] init];
[self.view addSubview:pick];
// 不要添加高度约束,已经在内部约束好
[pick mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.equalTo(self.view).insets(UIEdgeInsetsMake(0, 16, 0, 16));
make.top.equalTo(self.mas_topLayoutGuideBottom);
}];
使用自定义配置初始化
#import <Masonry.h>
#import <BHImagePickedView.h>
BHImagePickedViewObj *obj = [[BHImagePickedViewObj alloc] init];
obj.deleteButtonOffset = CGPointMake(obj.deleteButtonSize.width/2, -obj.deleteButtonSize.height/2);
obj.countEveryRow = 4;
obj.maxImageCount = 4;
obj.colSpacing = 16;
BHImagePickedView *pick = [[BHImagePickedView alloc] initWithPickedObj:obj];
[self.view addSubview:pick];
// 不要添加高度约束,已经在内部约束好
[pick mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.equalTo(self.view).insets(UIEdgeInsetsMake(0, 16, 0, 16));
make.top.equalTo(self.mas_topLayoutGuideBottom);
}];
初始化后更改配置
#import <Masonry.h>
#import <BHImagePickedView.h>
BHImagePickedView *pick = [[BHImagePickedView alloc] init];
[self.view addSubview:pick];
// 不要添加高度约束,已经在内部约束好
[pick mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.equalTo(self.view).insets(UIEdgeInsetsMake(0, 16, 0, 16));
make.top.equalTo(self.mas_topLayoutGuideBottom);
}];
BHImagePickedViewObj *obj = [[BHImagePickedViewObj alloc] init];
obj.maxImageCount = 4;
obj.countEveryRow = 4;
pick.pickedObj = obj;
APIs
BHImagePickedViewObj
属性 | 类型 | 备注 | 默认值 |
---|---|---|---|
countEveryRow | NSInteger | 每行图片个数 | 5 |
rowSpacing | CGFloat | 行间距 | 8 |
colSpacing | CGFloat | 列间距 | 8 |
contentMode | UIViewContentMode | 图片的 ContentMode | UIViewContentModeScaleAspectFill |
maxImageCount | NSUInteger | 可选择的图片最大数量 | 9 |
deleteButtonSize | CGSize | 删除按钮大小 | 16,16 |
deleteButtonOffset | CGPoint | 删除按钮偏移量(正数向右下偏移,负数向左上偏移) | 0,0 |
deletePrompt | NSString | 删除图片时的alert提示信息 | "确定删除这张图片吗" |
BHImagePickedView
属性 | 类型 | 备注 | 默认值 |
---|---|---|---|
pickedObj | BHImagePickedViewObj | 配置对象 | |
imagesArray | NSMutableArray | 已选择的图片数组 | |
delegate | id | 代理 |
方法:
// 调用此方法可调起选择图片功能
- (void)addImages;
代理方法:
@protocol BHImagePickedViewDelegate <NSObject>
@optional
/// 图片选择器已经选择了图片
/// @param pickedView 当前控件
/// @param images 本次选择的图片
- (void)bhimagePickedView:(BHImagePickedView *)pickedView didSelectedImages:(NSArray<UIImage *> *)images;
/// 图片展示器已经移除了一张图片
/// @param pickedView 当前控件
/// @param index 本次移除图片的下标
- (void)bhimagePickedView:(BHImagePickedView *)pickedView didRemoveImageAtIndex:(NSUInteger)index;
@end