Swift調(diào)用OC的block是個難題,我反復(fù)試了幾回都沒有成功,最近偶然的一次實驗才成功調(diào)用.
內(nèi)容比較基礎(chǔ),主要是為了幫助和我一樣被這個問題困擾的同學(xué)..
首先在MLSelectPhotoPickerViewController 定義一個block
typedef void(^callBackBlock)(id obj);
Oc的調(diào)用方法:
MLSelectPhotoPickerViewController *pickerVC = [[MLSelectPhotoPickerViewController alloc] init];
pickerVC.callBack = ^(NSArray *assects){
//
};
Swift的正確的調(diào)用方法:
let addWaterVC = MLSelectPhotoPickerViewController()
addWaterVC.callBack = { (AnyObject) -> () in
print(AnyObject!);
});
所以總結(jié)如下:
// oc的block
返回值(^名稱)(類型 傳值)
// swift里調(diào)用
名稱 = {(傳值)->(返回值) in
}