美文网首页
Swift-Delegaet

Swift-Delegaet

作者: XTK_iOS | 来源:发表于2019-05-15 17:57 被阅读0次
// delegate页面反向传值

// 第二个页面
// 1.自定义一个协议及里面的事件方法--相当于制造了一个工具给工人用,并规定干什么活
protocol selectCityDelegate {
    func didChangeCity()
}

// 2.在本页面有有一些事情发生,这些事件函数究竟放在那里--相当于告诉别人这个工具是谁所有的
var delegate:selectCityDelegate?

// 3.哪里执行写到哪里
// ? :delegate有值则继续执行后面的调用,若为nil,则不执行后面的回调
delegate?.didChangeCity()


// 第一个页面
// 1.遵守协议
selectCityDelegate
// 2.实现协议
func didChangeCity() {
        
}
// 3.第二个页面的事件函数委托给本controller实现
委托.delegate = self
as  -->向上转型--upcasting或转换一般类型(类似于Int(3.2))--用的少
as? -->向下转型--downcasting--可能为空的情况下使用,要用if--let(可选绑定)
as! -->向下转型--downcasting--强制转换类型,在明确的情况下使用

相关文章

网友评论

      本文标题:Swift-Delegaet

      本文链接:https://www.haomeiwen.com/subject/sjsmaqtx.html