作者:Dominik Hauser,原文链接,原文日期:2016-04-10
译者:Lanford3_3;校对:Channe;定稿:Cee

因为 Swift 2.2 中 selector 的新语法,我用在「在 Target-Action 中使用响应链」中的方法产生了一个警告,让我们来修正它。

总管协议

首先我们加入一个协议:

@objc protocol DetailShowable {
@objc func showDetail()
}

之后,我们可以给 Selector 添加一个 extension,就像 Andyy Hope 在他的这篇🐂文中提到的那样,这个 extension 就长这样:

private extension Selector {
static let showDetail = #selector(DetailShowable.showDetail)
}

现在把 action 添加到响应链中就变得 so easy 了,就像这样:

button.addTarget(nil, 
action: .showDetail,
forControlEvents: .TouchUpInside)

最后,我们需要让响应链中的一些响应者对象遵循 DetailShowable 协议。

你可以在 github 上找到这些代码。

本文由 SwiftGG 翻译组翻译,已经获得作者翻译授权,最新文章请访问 http://swift.gg

文章目录
  1. 1. 总管协议