一:新建闭包
```
importUIKit
// 蓝牙详情闭包
typealiasshowBleDetail = (_name:String,_uuid:String)->Void
classDiscoverCell:UITableViewCell{
// 点击蓝牙详情...
varclickBleInfo:showBleDetail?
}
```
二:将闭包作为参数传给函数
```
/**
non-escaping:非逃逸型,闭包生命周期和函数相同,退出函数则结束
escaping :逃逸型, 生命周期长,与函数异步,明确何时调用了该闭包再使用
*/
publicfuncdoShowInfo(infoBlock:@escapingshowBleDetail){
clickBleInfo= infoBlock
}
```
注意:swift3.0默认为
三:调用函数
在事件响应方法中调用该函数,类似于OC的if(Block){Block()}
事件调用
```
@objcfuncshowSelectedDeviceInfo(sender:UIButton) {
// 闭包响应...
clickBleInfo!("boris","******")
}
```
外部调用函数响应闭包:
```
cell.doShowInfo{ (name, uuid)in
print("peripheralName:\(name), peripheralUUID:\(uuid)")
}
```