UIView+SelectImageView.m 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. //
  2. // UIView+SelectImageView.m
  3. // 乐销
  4. //
  5. // Created by 隋林栋 on 2017/1/9.
  6. // Copyright © 2017年 ping. All rights reserved.
  7. //
  8. #import "UIView+SelectImageView.h"
  9. //需要上传的image
  10. #import "BaseImage.h"
  11. //photo asset
  12. #import <AssetsLibrary/AssetsLibrary.h>
  13. //photo
  14. #import <Photos/Photos.h>
  15. @implementation UIView (SelectImageView)
  16. //选择图片
  17. - (void)showImageVC:(NSInteger)imageNum{
  18. ImagePickerVC * vc = [[ImagePickerVC alloc]init];
  19. vc.photoNumber = imageNum;
  20. vc.delegate = self;
  21. [GB_Nav pushViewController:vc animated:true];
  22. }
  23. #pragma mark 选择图片回调
  24. - (void)ImagePickerVC: (ImagePickerVC *)ivc finishClick:(NSArray *)assetArray{
  25. [GlobalMethod fetchPhotoAuthorityBlock:^{
  26. NSMutableArray * aryAll = [NSMutableArray array];
  27. PHImageManager *imageManager = [[PHImageManager alloc] init];
  28. PHImageRequestOptions *opt = [[PHImageRequestOptions alloc]init];
  29. // opt.resizeMode = PHImageRequestOptionsResizeModeNone;
  30. opt.synchronous = YES;
  31. opt.deliveryMode = PHImageRequestOptionsDeliveryModeOpportunistic;;
  32. for (PHAsset *asset in assetArray) {
  33. [imageManager requestImageForAsset:asset targetSize:CGSizeMake(SCREEN_WIDTH/2.0,SCREEN_HEIGHT/2.0) contentMode:PHImageContentModeAspectFit options:opt resultHandler:^(UIImage * _Nullable result, NSDictionary * _Nullable info) {
  34. [aryAll addObject: [BaseImage imageWithCGImage:result.CGImage imageAsset:asset]];
  35. }];
  36. }
  37. if (aryAll.lastObject) {
  38. [self imageSelect:aryAll.lastObject];
  39. }
  40. [self imagesSelect:aryAll];
  41. }];
  42. }
  43. /**
  44. * 点击第一张图片(照相机)的回调
  45. *
  46. * @param image 拍照的image
  47. */
  48. - (void)ImagePickerVC: (ImagePickerVC *)ivc firstImageClick:(UIImage *)image{
  49. [GlobalMethod fetchPhotoAuthorityBlock:^{
  50. BaseImage *imageBase = [BaseImage imageWithCGImage:image.CGImage imageAsset:nil];
  51. [self imageSelect:imageBase];
  52. NSMutableArray * muAry = [NSMutableArray array];
  53. [muAry addObject:imageBase];
  54. [self imagesSelect:muAry];
  55. [GB_Nav popViewControllerAnimated:true];
  56. }];
  57. }
  58. #pragma mark 图片选择
  59. - (void)imageSelect:(BaseImage *)image{
  60. }
  61. - (void)imagesSelect:(NSArray *)aryImages{
  62. }
  63. @end