swift 中使用 TZImagePicker

395 阅读1分钟

swif获取不到TZImagePicker的回调,需写成block转接给swift调用

使用

        let tz = TZImagePickerController()

        tz.maxImagesCount = 1

        tz.allowPickingImage = true

        tz.allowPickingGif = false

        tz.allowPickingVideo = false

        tz.allowCrop = true

        tz.cropRect = CGRect(x: 0, y: (KScreenHeight-KScreenWidth)/2, width: KScreenWidth, height: KScreenWidth)

        SetUpTZImagePicker.setBlcok(tz) { imgs, assets, issel in

            

        }

桥接文件中:

#import "TZImagePickerController.h"

#import "SetUpTZImagePicker.h"

block转接文件 .h:

#import <UIKit/UIKit.h>

#import <Foundation/Foundation.h>

#import "TZImagePickerController.h"


NS_ASSUME_NONNULL_BEGIN

@class TZImagePickerController;

@interface SetUpTZImagePicker : NSObject


+ (void)setBlcok:(TZImagePickerController *)vc andBlock:(void(^)(NSArray<UIImage *>* ,NSArray * ,bool))block;

+ (void)setVideoBlcok:(TZImagePickerController *)vc andBlock:(void(^)(UIImage * ,PHAsset *))block;

@end

block转接文件 .m:

#import "SetUpTZImagePicker.h"
#import "TZImagePickerController.h"


@implementation SetUpTZImagePicker


+ (void)setBlcok:(TZImagePickerController *)vc andBlock:(void(^)(NSArray<UIImage *>* ,NSArray * ,bool))block{

    [vc setDidFinishPickingPhotosHandle:^(NSArray<UIImage *> *photos, NSArray *assets, BOOL isSelectOriginalPhoto) {

        block(photos ,assets ,isSelectOriginalPhoto);

    }];
}


+ (void)setVideoBlcok:(TZImagePickerController *)vc andBlock:(void(^)(UIImage * ,PHAsset *))block{

    [vc setDidFinishPickingVideoHandle:^(UIImage *coverImage, PHAsset *asset) {

        block(coverImage ,asset);

    }];

}

@end