首选注册协议,接下来使用属性设置代理,第三个添加代理的方法(第二个界面)
protocol loginViewDelegate {
func didDelegateText(text:String)
}
var delegate : loginViewDelegate?
delegate?.didDelegateText(text: "helloworld")
在第一个界面添加代理之后就可以使用方法
func didDelegateText(text: String) {
print("这里是我获取到的数据信息\(text)")
}
swift逆向传值(block)
第二个界面完成block的声明、持有、引用、最终使用block方法
// 声明
typealias textBlock = (String) -> ()
// 持有
var block :textBlock?
// 引用
if let block = self.block {
block(normalModel.tag_name)
}
// 使用block方法
func getBlock(block:textBlock?) {
self.block = block
}
home.getBlock { (value) in
print("这里是我返回的数据信息\(value)")
}
网友评论