5

用户单击按钮时如何关闭键盘?一个更好理解的简短示例:用户在某些文本字段中编辑一些文本,最后他没有在键盘上单击“完成”或其他内容,而是在仍然显示键盘时单击“保存”按钮. 那么,我现在如何关闭键盘?

谢谢。问候,丹尼尔

4

4 回答 4

6

您还可以调用[view endEditing:YES]层次结构中文本字段上方的任何视图。如果您不确定哪个文本字段具有第一响应者状态,这很有用。它还可以选择让文本字段委托停止操作(通过从 shouldEndEditing 返回 NO :) 如果您使用委托对字段进行验证,这很好。

于 2013-06-27T18:43:59.227 回答
4

在按钮动作中写入,

if([textField isFirstResponder]){
  [textField resignFirstResponder];
}

如果有更多文本字段,则每次开始编辑时获取当前文本字段引用,并在按钮操作中退出其响应者。

于 2011-06-15T11:32:20.560 回答
1

如果您有多个文本字段并且不知道哪个是第一响应者(或者您根本无法从编写此代码的任何位置访问文本字段),您可以在包含文本字段的父视图上调用 endEditing: .

在 Swift 中,在相关的视图控制器中,将这一行添加到按钮函数中:

self.view endEditing(true)
于 2016-07-21T16:42:43.453 回答
0

除了 SriPriya 的回答,请在这里获取 Swift 2 风格的版本:

if numberTextField.isFirstResponder() {
    numberTextField.resignFirstResponder()
}

请享受...

于 2015-12-04T22:13:09.020 回答