iOS开发进阶Swift开发技巧

Swift 代理与闭包的使用

2016-03-09  本文已影响0人  小黑Swift
1.Delegate 代理就是自己不想干,通过别人帮你干
2.Closure 闭包也可以了解为一种特殊代理,一种函数式编程形式

*使用场景:

Delegate 一般使用在行为上
Closure 一般用来实现前后两个控制器的反向传值

代理回传 闭包回传
闭包还可以用于: 自定义 View 与 ViewController 之间
CustomView.swift
 class ModalView: UIView {
 var closeButtonBlack: (() -> Void)? //1 声明闭包 - 无参数类型

     ...........
     .....

@IBAction func closeButton(sender: UIButton) {
  self.closeButtonBack?() // 2
 
}
}
ViewController.swift
    //3 使用例子
    let myView = CustomView()
myView.closeButtonBack = ({() -> Void in
  print("666666")
})
上一篇下一篇

猜你喜欢

热点阅读