Swift 调用OC的多参数Block

最近项目中用的是swift开发语言,需要调用oc代码中一个多参数的block,因为在swift中后面参数需要自己手敲出来,不会自动带出,记录一下,转载请注明出处。谢谢。

//oc中定义的多参数block为:
@property (nonatomic, copy) void (^didFinishPickingPhotosWithInfosHandle)(NSArray *photos,NSArray *assets,BOOL isSelectOriginalPhoto,NSArray *infos);

//swift中调用时候
 imagePickerVc?.didFinishPickingPhotosWithInfosHandle = {(photos:[UIImage]?, assets:[Any]?, isSelectOriginalPhoto:Bool, infos:[[AnyHashable : Any]]?) -> Void in
            print("在这里使用block传输的数据")
        }

主要是记住一个原则如下:

oc的block
返回值(^名称)(类型 传值)

// swift里调用
名称 = {(传值)->(返回值) in
                        
 }

你可能感兴趣的:(Swift 调用OC的多参数Block)