swift开发使用闭包传值

swift开发使用闭包传值

开发中,从一个页面跳转到另一个页面的时候,有时候需要到跳转后的页面把值传回上一个页面,这里介绍一下swift开发中使用闭包传值
首先我们创建两个视图控制器分别为”ViewController“和”NextViewController
swift开发使用闭包传值_第1张图片
现在我们要从”ViewController“跳转到到”NextViewController“,然后在”NextViewController“里面把值传给”ViewController“,需要在”NextViewController“申明闭包,”NextViewController“页面如下:
swift开发使用闭包传值_第2张图片
代码如下:

    //声明闭包
    typealias clickBtnClosure = (text: String?) -> Void
    //把申明的闭包设置成属性
    var clickClosure: clickBtnClosure?
    //为闭包设置调用函数
    func clickValueClosure(closure:clickBtnClosure?){
        clickClosure = closure
    }

闭包赋值的时候,在调用闭包的地方,就可以获取到闭包传过去的参数值内容
swift开发使用闭包传值_第3张图片

ViewController“页面如图,接到传值把值显示在输入框里面:
swift开发使用闭包传值_第4张图片
代码如下,闭包被赋值的时候该代码会被调用,就能获取到上一个页面传过来的参数值:
swift开发使用闭包传值_第5张图片

具体效果如下:在”NextViewController“页面输入框输入值,点击确定,
swift开发使用闭包传值_第6张图片
可以发现”ViewController“会打印
swift开发使用闭包传值_第7张图片
说明值已经传成功,返回上一个页面查看如图:
swift开发使用闭包传值_第8张图片

你可能感兴趣的:(ios,闭包,swift,ios开发,传值)