7

我过去用过这个。

override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?)     
{
    self.view.endEditing(true)
}

但是现在在 Xcode 8 beta 中我得到了这个错误:

声明touchBegan(touches:withEvent)具有与任何潜在覆盖不同的参数名称。

有什么想法吗?

4

1 回答 1

12

这对我有用:

override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
    self.view.endEditing(true)
}

请注意函数参数中非常微妙的 Swift 3 更新。在The Swift Programming Language (Swift 3)的第 20 和 21 页上,他们解释说:

“默认情况下,函数使用参数名称作为参数的标签。在参数名称之前写一个自定义参数标签,或者写 _ 以不使用参数标签。”</p>

:)

于 2016-06-18T09:50:51.230 回答