监听事件的五种方式

监听事件的五种方式:swift

一、代理spa


二、block代理


三、通知code


四、kvo键值观察继承


五、最多见也最容易忽略的 addTarget,如图事件


小结

  • 使用代理传递消息是为了在控制器和视图之间解藕,让视图可以被多个控制器复用,例如 UITableViewget

  • 可是,若是视图仅仅只是为了封装代码,而从控制器中剥离出来的,而且可以确认该视图不会被其余控制器引用,则能够直接经过 addTarget 的方式为该视图中的按钮添加监听方法循环

  • 这样作的代价是耦合度高,控制器和视图绑定在一块儿,可是会省略部分冗余代码引用

代理的使用

  • swift 中代理的使用基本与 OC 相同方法

  • 须要注意的是,定义协议时,须要继承自 NSObjectProtocol

  • 代理属性须要使用 weak 防止出现循环引用

相关文章
相关标签/搜索