
前面写了Swift的通知和代理的传值:
《Swift NSNotificationCenter的使用》
《Swift 协议代理的使用和传值》
这篇就介绍关于闭包传值的使用。在iOS常用的三种反向传值方式也就基本介绍完了。
在SecondVIEwController里面
1.声明一个block
/// 声明一个blocktypealias SecondVIEwControllerBlock = (String)->()
2.持有一个block变量
/// 持有一个block变量var block : SecondVIEwControllerBlock?
3.赋值
// 赋值self.block!(textFIEld.text!)
在VIEwController里面
4.在页面跳转前取值
// MARK: 跳转到下一个页面 @IBAction func nextBtnClick(sender: AnyObject) { let sVC = SecondVIEwController() sVC.block = {str in // 接受block的传值 self.showLabel.text = str } // 跳转到下一个页面 self.navigationController?.pushVIEwController(sVC,animated: true) }总结@H_419_7@
从整体上面看,block的使用和代理的使用流程差不多,但是block在使用会比代理简洁直观,代码会比较集中。
在这篇博客里面:
《【iOS】集成支付宝支付/银联支付/微信支付》
就是很好的例子。
关于Swift闭包的使用的Demo的工程代码和前面的Swift代理的使用的基本一致。在第一个页面里面有一个label和一个按钮,在第二个控制器里面有一个TextFIEld。
代码下载地址:Swift-block
以上是内存溢出为你收集整理的Swift 闭包(block)传值全部内容,希望文章能够帮你解决Swift 闭包(block)传值所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)