视图ViewController
class ViewController: UIViewController{ @IBOutlet weak var valueLabel: UILabel! var secVC:SecondController = SecondController() override func viewDidLoad() { super.viewDidLoad() secVC.myClosure = {(text:String) -> Void in print("\(text)") self.valueLabel.text = text } } @IBAction func push() { self.navigationController?.pushViewController(secVC,animated: true) } }
视图二
import UIKit // 闭包 typealias sendValueClosure = (text:String)->Void class SecondController: UIViewController { var myClosure:sendValueClosure? var textField: UITextField! override func viewDidLoad() { super.viewDidLoad() self.view.backgroundColor = UIColor.redColor() textField = UITextField(frame: CGRectMake(30,100,260,30)) textField.borderStyle = UITextBorderStyle.RoundedRect self.view.addSubview(textField) let btn = UIButton(frame: CGRectMake(30,150,30)) btn.setTitle("click",forState: UIControlState.normal) btn.addTarget(self,action: #selector(SecondController.click),forControlEvents: UIControlEvents.TouchUpInside) self.view.addSubview(btn) } // 点击这里传值过去 func click() { let str:String = textField.text! if (myClosure != nil){ myClosure!(text:str) } self.navigationController?.popViewControllerAnimated(true) } }
当点击click
运行结果为
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。