前言
前段时间写了一个基于PhotoKit的相册选择工具,完成第一个版本之后欣喜若狂的发布到github,结果一周时间过去了,结果完全没有出乎我的意料,并没有太多人向我提出疑问或者帮助。不过这完全没有影响到我继续完善这个框架的热情以及决心。所以上周我也着重去了解众多APP对于图片选择器的需求,虽然这是一个很小的功能,但不得不说,任何APP在用户注册的时候都会使用到此功能。所以此次更新不仅修复上一个版本的部分BUG,并且在此基础添加单张图片的截剪功能。希望所有看到此文章并使用此框架的开发者们给鄙人更多的建议。
功能
*选择多图
HZPickerNavigationController *navigationController = [[HZStoryBoardManager sharedPickerStoryboard] instantiateViewControllerWithIdentifier:@"HZPickerNavigationController"];
navigationController.mediaType = PHAssetMediaTypeImage;
navigationController.imageStyle = HZPickerImageStyleFilmCameras;
navigationController.previewingTouchEnable = YES;
navigationController.maximumNumberOfSelection = 8;
navigationController.selectMediaDataFinishBlock = ^(NSArray *mediaArray){
};
[self presentViewController:navigationController animated:YES completion:nil];
</code>
1、mediaType : 多媒体类型,一般为PHAssetMediaTypeImage
2、imageStyle : 使用HZPickerImageStyleFilmCameras样式,会直接进入到用户默认的相册里面选择图片(可参考微信聊天选择图片时的操作)。
使用HZPickerImageStyleList样式,会先让用户选择某一个相册(每一台iPhone一般都会有多个相册),假设用户选择了A相册,那么将直接在A相册中选取图片。
3、previewingTouchEnable : 是否开启3D Touch预览模式,默认是不开启,3D Touch预览模式只能在6S或6SP才会有效果
4、maximumNumberOfSelection : 选择图片的最大数量。
5、selectMediaDataFinishBlock : 操作完成之后的回调block,会返回一个数组,对象都是PHAsset类,并且对图片进行自定义开发。
*选择单张图片,并对图片进行裁剪
HZPickerNavigationController *navigationController = [[HZStoryBoardManager sharedPickerStoryboard] instantiateViewControllerWithIdentifier:@"HZPickerNavigationController"];
navigationController.mediaType = PHAssetMediaTypeImage;
navigationController.imageStyle = HZPickerImageStyleCropSingleImage;
navigationController.singleImageCropFinishBlock = ^(UIImage *cropImage,PHAsset *asset,CGRect cropRect){
};
[self presentViewController:navigationController animated:YES completion:nil];
</code>
1、mediaType : 多媒体类型,只能为PHAssetMediaTypeImage
2、imageStyle : 相册选择器样式,只能为
HZPickerImageStyleCropSingleImage
3、singleImageCropFinishBlock : 操作完成之后,会返回三个参数
① cropImage,根据用户选择的尺寸对原图进行相应的裁剪
② asset,返回PHAsset类方便对图片进行二次使用
③ cropRect,图片在原图的裁剪的尺寸
HZPickerImageViewController目前还没有经过太严谨的测试,所以还是希望如果在使用期间出了Bug或者别的什么问题,希望大家不忘可以去Github或者评论下面留下你宝贵的留言,我会非常认真对待每一个Bug、建议及评论。
Github : https://github.com/lianghuazhu0501/HZImagePickerViewController
视频演示 : http://v.youku.com/v_show/id_XMTY3NjIxODY0NA==.html