使用 TapGestureRecognizer 正确的语法

Using TapGestureRecognizer Proper Syntax

谁能帮我解决这个错误?不确定它要求什么...

TapGestureRecognizer Syntax

    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,现在我只是将其作为方法打印到日志中,这样我就可以轻松查看它是否有效。

谢谢!

如果您使用的是 Swift 3,请尝试使用 #selector(tapped(gesture:))。如果您使用的是 Swift 2,选择器可能会是 tapped(_:) 或其他。

当您使用 #selector 时,编译器将确保您引用的符号存在。如果你使用一个字符串并让编译器从字符串文字创建一个选择器,你得到的只是一个这样的警告。使用 Selector("funcname") 构造函数也有同样的缺点。

试试这个代码:在 Swift 3

中测试

注意:语法在 Swift 3.

中发生了变化

您可以通过在键盘上按住 function+control+option+command+f 来自动修复,然后 Xcode 会为您修复问题。

你的 code.Just 没问题,你使用 it.You 的方式,应该像这样放置你的代码...

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")
    }