我是stackoverflow的新手,我遇到了新的swift代码问题。我已经使用“Done”自定义了键盘上的返回按钮,但是当我点击它时,不要降低任何东西......我怎样才能隐藏键盘呢?我添加了一个代码(在这个网站上找到),当你点击某个地方而不是键盘时隐藏键盘,但我无法通过点击“完成”按钮来定制它...谢谢你之前!!
你需要实现当你点击完成按钮时调用的委托方法:
func textFieldShouldReturn(textField: UITextField!) -> Bool {
textField.resignFirstResponder()
return true
}
您还需要符合UITextFieldDelegate协议:
class MyViewController: UIViewController,UITextFieldDelegate // I assume you override UIview controller class if not add UITextFieldDelegate to your class
最后一件事是将您的类设置为文本字段委托:
textField.delegate = self
textField.delegate = self
可以替换为
这将在View及其组件之间创建必要的连接,并使textFieldShouldReturn方法按预期工作。
协议方法有新的签名(Swift 4.1)。 IE:
func textFieldShouldReturn(_ textField: UITextField) -> Bool {
textField.resignFirstResponder()
return true
}
由于协议方法是可选的,因此使用错误的签名将无声地失败。