swift闭包的使用 -- 类似于OC中的Block
2016-10-23 18:41
441 查看
1、定义:
在自定义类YTButton里面加上如下代码:
typealias YTButtonCallBack = () ->Void //YTButtonCallBack为自定义名称
class YTButton:UIView {
var callBack:YTButtonCallBack?
//点击按钮触发该方法
func buttonClicked() {
if (self.callBack !=nil)
{
self.callBack!()
return
}
}
}
2、使用:
在ViewController里加入如下代码:
overridefunc viewDidLoad() {
super.viewDidLoad()
let btn =YTButton()
btn.callBack = {
print("button clicked......")
//这里如果要用self,得使用weak修饰变量, 打破强引用
}
self.view.addSubview(btn)
}
在自定义类YTButton里面加上如下代码:
typealias YTButtonCallBack = () ->Void //YTButtonCallBack为自定义名称
class YTButton:UIView {
var callBack:YTButtonCallBack?
//点击按钮触发该方法
func buttonClicked() {
if (self.callBack !=nil)
{
self.callBack!()
return
}
}
}
2、使用:
在ViewController里加入如下代码:
overridefunc viewDidLoad() {
super.viewDidLoad()
let btn =YTButton()
btn.callBack = {
print("button clicked......")
//这里如果要用self,得使用weak修饰变量, 打破强引用
}
self.view.addSubview(btn)
}
相关文章推荐
- Swift 基本知识点之九 —通知,代理,闭包(OC中Block)从前向后传值解析
- [Swift]Swift中使用闭包实现block回调事件
- swift 学习笔记3 -- OC的block与swift的闭包
- Swift 闭包即OC中的Block
- swift中闭包的使用(类似与block的做法)
- Swift中闭包实现OC的block传值
- swit 闭包使用,闭包和OC的block非常相似,先回顾block
- iOS开发之OC与swift开发混编教程,代理的相互调用,block的实现。OC调用Swift中的代理, OC调用Swift中的Block 闭包,swift 3.0
- swift里面利用闭包达到和OC里面block的效果
- swift中闭包的使用(类似与block的做法)
- iOS开发之OC与swift开发混编教程,代理的相互调用,block的实现。OC调用Swift中的代理, OC调用Swift中的Block 闭包,swift 3.0
- Swift: 比较Swift中闭包传值、OC中的Block传值
- Objective-C中的block与Swift中的尾随闭包使用教程
- swift 自定义view的写法(内有仿照OC中block的 swift闭包的调用)
- Swift 闭包 (oc 的block 类似)
- [swift]-闭包前oc中block的说明
- 关于OC中的Block,Swift中的闭包,C++11中的lambda表达式等匿名函数详解
- swift 自定义view的写法(内有仿照OC中block的 swift闭包的调用)
- OC的block和Swift的闭包写法
- swift中闭包 OC中Block 解决循环引用