现在有一个需求:从AViewController跳到BViewController,B里面用户输入一个内容,但是这个输入的值同时需要用来修改A的界面
其实简单地用一个闭包回调就可以实现
AViewController
let a = BViewContoller()
a.mSaveCallback = {
(result) in
update(result) //通过result更新界面
}
self.navigationController?.pushViewController(a, animated: true)
BViewController
typealias SaveCallback = (result:String)->Void //声明一个回调
var saveCallback:SaveCallback? //回调作为参数
func afterEdit(){
saveCallback(result) //得到结果后调用闭包
}