UIViewController+TZImagePickerController.m 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. //
  2. // UIViewController+TZImagePickerController.m
  3. // Extension
  4. //
  5. // Created by CY on 2022/8/24.
  6. //
  7. #import "UIViewController+TZImagePickerController.h"
  8. @implementation UIViewController (TZImagePickerController)
  9. - (void)showImagePickerWithStyleBlock:(void (^)(TZImagePickerController * _Nonnull))styleBlock finishBlock:(nonnull void (^)(NSArray<UIImage *> * _Nonnull, NSArray * _Nonnull, BOOL))finishBlock{
  10. TZImagePickerController *imagePickerVc = [[TZImagePickerController alloc] initWithMaxImagesCount:6 delegate:self];
  11. if (styleBlock != nil) {
  12. styleBlock(imagePickerVc);
  13. }
  14. imagePickerVc.allowPickingVideo = NO;
  15. [imagePickerVc setDidFinishPickingPhotosHandle:finishBlock];
  16. imagePickerVc.cropViewSettingBlock = ^(UIView *cropView) { // < 自定义裁剪框的其他属性
  17. [cropView.superview setBackgroundColor:[UIColor colorWithWhite:0 alpha:0.9]];
  18. NSLog(@"asdasdad");
  19. };
  20. imagePickerVc.modalPresentationStyle = UIModalPresentationFullScreen;
  21. [self presentViewController:imagePickerVc animated:YES completion:nil];
  22. }
  23. - (void)showVideoPickerWithStyleBlock:(void (^)(TZImagePickerController * _Nonnull))styleBlock finishBlock:(nonnull void (^)(UIImage * _Nonnull coverImage, NSString * _Nonnull outputPath, NSString * _Nonnull errorMsg))finishBlock{
  24. TZImagePickerController *imagePickerVc = [[TZImagePickerController alloc] initWithMaxImagesCount:1 delegate:self];
  25. if (styleBlock != nil) {
  26. styleBlock(imagePickerVc);
  27. }
  28. imagePickerVc.maxCropVideoDuration = 60;
  29. imagePickerVc.videoMaximumDuration = 60;
  30. imagePickerVc.presetName = AVAssetExportPresetHighestQuality; //高清
  31. imagePickerVc.allowEditVideo = YES;
  32. // imagePickerVc.didFinishPickingAndEditingVideoHandle = ^(UIImage *coverImage, NSString *outputPath, NSString *errorMsg) {
  33. // NSLog(@"视频完成");
  34. // };
  35. [imagePickerVc setDidFinishPickingAndEditingVideoHandle:finishBlock];
  36. imagePickerVc.modalPresentationStyle = UIModalPresentationFullScreen;
  37. [self presentViewController:imagePickerVc animated:YES completion:nil];
  38. }
  39. @end