任何人都可以帮我解决这个错误吗?不知道它要求的是什么......
override func viewDidLoad() {
super.viewDidLoad()
let tapStart = UITapGestureRecognizer(target: self, action:#selector(tapped(gesture:)))
self.view.addGestureRecognizer(tapStart)
func tapped(gesture: UITapGestureRecognizer){
print("It actually worked")
}
}
我的最终目标似乎应该相当简单:
当用户点按屏幕上的任意位置时,我想要转到另一个视图。我正在创建一个TapGestureRecognizer,现在我只是打印到日志作为方法,所以我可以很容易地看到它是否有效。
谢谢!
答案 0 :(得分:0)
如果您使用的是Swift 3,请尝试使用#selector(tapped(gesture:))
。如果您使用的是Swift 2,则选择器可能会是tapped(_:)
或其他内容。
编译器将确保在您使用#selector
时存在您引用的符号。如果你使用一个字符串并让编译器从字符串文字创建一个选择器,你得到的就是这样的警告。使用Selector("funcname")
构造函数也有同样的缺点。
答案 1 :(得分:0)
试试这段代码:在Swift 3中测试
注意:Swift 3中的语法已更改。
您可以通过键盘上的功能+控制+选项+命令+ f 进行自动修复,然后Xcode会为您解决问题。
你的代码没有错。就是你使用它的方式。你应该像这样放置代码......
override func viewDidLoad() {
super.viewDidLoad()
let tapStart = UITapGestureRecognizer(target: self, action:#selector(tapped(gesture:)))
self.view.addGestureRecognizer(tapStart)
}
func tapped(gesture: UITapGestureRecognizer){ // func tapped(_:) this will works to
print("Your in Right track mate")
}