1、TZImagePickerController
TZImagePickerController是一個封裝好的選擇相冊圖片的三方庫,支持多選,仿微信的選擇圖片党瓮。可用cocoapods直接導(dǎo)入
使用方法:
1盐类、#import "TZImagePickerController.h"
2寞奸、<TZImagePickerControllerDelegate>
3、TZImagePickerController *imagePC=[[TZImagePickerController alloc]initWithMaxImagesCount:1 delegate:self];//設(shè)置多選最多支持的最大數(shù)量在跳,設(shè)置代理
[imagePC setDidFinishPickingPhotosHandle:^(NSArray*imageArray, NSArray *array) {
//點(diǎn)擊確定后回道主界面
}]枪萄;
[self presentViewController:imagePC animated:YES completion:nil];//跳轉(zhuǎn)
2、RSKImageCropViewController
RSKImageCropViewController是一個用來對相片進(jìn)行裁剪的三方庫猫妙〈煞可用cocoapods直接導(dǎo)入。
1割坠、#import "RSKImageCropper.h"
2齐帚、<RSKImageCropViewControllerDelegate>
3、RSKImageCropViewController *imageCropVC = [[RSKImageCropViewController alloc] initWithImage:image cropMode:RSKImageCropModeCustom];//傳入圖片與裁剪框的類型
//RSKImageCropModeCustom-自定義
//RSKImageCropModeCircle-圓形
//RSKImageCropModeSquare-矩形
imageCropVC.delegate = self;
imageCropVC.dataSource=self;
[self.navigationController pushViewController:imageCropVC animated:YES];
如果cropMode為RSKImageCropModeCustom自定義類型彼哼,則需要加入RSKImageCropViewControllerDataSource進(jìn)行自定義裁剪框
- (CGRect)imageCropViewControllerCustomMaskRect:(RSKImageCropViewController *)controller
{
//返回圖片的位置
return CGRectMake(0, (SCREEN_HEIGHT-100)/2, SCREEN_WIDTH, 100);
}
- (UIBezierPath *)imageCropViewControllerCustomMaskPath:(RSKImageCropViewController *)controller
{
//返回裁剪框的位置
UIBezierPath *path=[UIBezierPath bezierPathWithRoundedRect:CGRectMake(0, (SCREEN_HEIGHT-100)/2, SCREEN_WIDTH, 100) cornerRadius:0];
return path;
}
3对妄、TZImagePickerController與RSKImageCropViewController混合使用
首先設(shè)置TZImagePickerController最大選擇數(shù)為1,然后在setDidFinishPickingPhotosHandle的回調(diào)中把image傳給RSKImageCropViewController即可敢朱。
TZImagePickerController *imagePC=[[TZImagePickerController alloc]initWithMaxImagesCount:3 delegate:self];? ? ? ? ? ? [imagePC setDidFinishPickingPhotosHandle:^(NSArray*imageArray, NSArray *array) {
RSKImageCropViewController *imageCropVC = [[RSKImageCropViewController alloc] initWithImage:imageArray[0] cropMode:RSKImageCropModeCustom];
imageCropVC.delegate = self;
imageCropVC.dataSource=self;
[self.navigationController pushViewController:imageCropVC animated:YES];
}];
[self presentViewController:imagePC animated:YES completion:nil];