DistImagePickerView
集本地图片、视频选择、展示、拍摄、录制于一体的并用于上传的多媒体框架 目录
功能实现 如何添加 使用介绍 更多自定义操作 版本 基本要求
iOS 8.0 或更高版本
使用 GitHub 上的第三方 TZImagePickerController 和 MWPhotoBrowser
功能实现
图片多选及单选,视频多选及单选 时刻回调出媒体数据用于上传 直接对图片以及视频进行展示 多种属性自定义: 媒体类型 删除、限定最大选择数数量 同个媒体资源是否多次选择 是否展示删除按钮 是否显示添加按钮 选择图片视图的背景颜色 如何添加
支持 Cocoapod
pod 'DistImagePickerView'
有人反馈搜不到 可能是本地 Cocoapod 库的问题 执行代码 pod setup 更新本地 Cocoapod 库即可
手动添加 把 DistImagePickerView 文件拉到项目中 添加头文件#import "DistImagePickerView.h" 还要添加一些依赖库 pod 'TZImagePickerController',pod 'MWPhotoBrowser' 使用介绍(具体看 DistImagePickerView 示例)
唯一的初始化方法, Frame 以及 countOfRow Frame中的高度设置0即可,框架的高度会根据宽度以及每行展示个数来自动适应 DistImagePickerView *pickerV = [DistImagePickerView ImagePickerViewWithFrame:CGRectMake(0, 70, [UIScreen mainScreen].bounds.size.width, 0) CountOfRow:3];
需要展示的媒体的资源类型
typedef enum : NSUInteger { DistImageTypePhotoAndCamera,// 本地相机和图片 DistImageTypePhoto,// 本地图片 DistImageTypeCamera,// 拍照 DistImageTypeVideoTape,// 录像 DistImageTypeVideo,// 视频 DistImageTypeAll,// 所有资源 } DistImageType;
pickerV.type = DistImageTypePhoto; 是否允许 同个图片或视频进行多次选择 pickerV.allowMultipleSelection = YES; 视情况看是否需要改变高度,目前单独使用且作为 tableview 的 header,实时监控高度的变化 [pickerV observeViewHeight:^(CGFloat height) {
}]; 随时获取选择的媒体文件 [pickerV observeSelectedMediaArray:^(NSArray
更多自定义操作
preShowMedias 预先展示的媒体数组。如果一开始有需要显示媒体资源,可以先传入进行显示,没有的话可以不赋值。 传入的如果是图片类型,则可以是:UIImage,NSString,至于其他的都可以传入 DistImagePickerModel 类型 包括网络图片和 gif 图片 在预览或者之前已经有图片的情况下,需要传入进行预先展示 pickerV.preShowMedias = @[@"4",@"1",@"http://s1.dwstatic.com/group1/M00/AA/B8/b9a8f39ed9c8609354a07cc38452aef9.gif"]; maxImageSelected 最大图片、视频选择个数,包括 preShowMedias 的数量. default is 9 自定义从本地相册中所选取的最大数量 pickerV.maxImageSelected = 5; showDelete 是否显示删除按钮. Defaults is YES 预览情况下设置为 NO pickerV.showDelete = NO; showAddButton 是否需要显示添加按钮. Defaults is YES 编辑情况下设置为 YES 预览情况下设置为 NO pickerV.showAddButton = NO; allowPickingVideo 是否允许在选择图片的同时可以选择视频文件. default is NO 如果希望在选择图片的时候,出现视频资源,那么可以设置为 YES pickerV.allowPickingVideo = NO; allowMultipleSelection 是否允许同个图片或视频进行多次选择. default is YES 如果设置为 NO,那么在已经选择了一张以上图片之后,就不能同时选择视频了(注意) 如果不希望已
1.0.0 大版本的更新,更改初始化方法,增加每行显示图片个数的接口,更易于满足不同需求
Hope
代码使用过程中,发现任何问题,可以随时 issue 如果有更多建议或想法也可以直接联系我 QQ:75081647 感谢有几位朋友提出宝贵意见让此框架更加完善 感谢 Licenses
所有源代码都许可在 MIT 许可证下。