Tag: swift4

我该如何处理Swift 4中#selector()的@objc推理弃用?

我试图将我的项目的源代码从Swift 3转换为Swift 4. Xcode给我的一个警告是关于我的选择器。 例如,我使用像这样的常规选择器将一个目标添加到按钮: button.addTarget(self, action: #selector(self.myAction), for: .touchUpInside) 这是它显示的警告: “#selector”的参数是指“ViewController”中的实例方法“myAction()”,它依赖于Swift 4中弃用的“@objc”属性推断 添加“@objc”以将此实例方法公开给Objective-C 现在,点击错误消息Fix这对我的功能: // before func myAction() { /* … */ } // after @objc func myAction() { /* … */ } 我真的不想重命名所有的函数来包含@objc标记,我假设没有必要。 如何重写选择器来处理弃用?