为什么 textFieldShouldReturn 在我 return false 时仍然有效?
Why textFieldShouldReturn is still working when i return false?
我通过实现函数 textFieldShouldReturn
并在该函数内调用 resignFirstResponder()
将键盘隐藏在按下的 return 键上。它工作得很好,但是当我在这个函数中 return false
时,键盘仍然隐藏着。现在在这里我不明白 returning true
或 false
的用途是什么,如果键盘在这两种情况下都隐藏了?
由于调用 resignFirstResponder
,键盘正在关闭。它与 textFieldShouldReturn
.
的 return 值完全无关
根据我的经验,textFieldShouldReturn
的 return 值几乎没有用。在绝大多数情况下,return true
或 false
.
都没有区别
我 return false
我对 testFieldShouldReturn
的所有使用。如果你 return true
并且你的 textFieldShouldReturn
实现将第一响应者设置为 UITextView
,文本视图最终会添加换行符。从 textFieldShouldReturn
返回 false
可确保不会发生这种情况。但这是基于几年前 iOS 4 或 5 的经验。我不知道 iOS.
的最新版本是否仍然如此
textFieldShouldReturn
的 return 值回答了一个 不同的问题 。如果文本字段有控制事件 editingDidEndOnExit
的操作,that 将导致键盘关闭 unless textFieldShouldReturn
实现为 return false
.
我试过 true 或 false,键盘确实会关闭,代码如下:
func textFieldShouldReturn(_ textField: UITextField) -> Bool {
textField.resignFirstResponder()
return false
}
键盘是否关闭取决于“textField.resignFirstResponder()”,
如果删除它,键盘将不再关闭,无论是对还是错。
我已经有很长时间没有参与 Native iOS 了。将近2年。我刚刚学习了 swift 5 并从基础开始研究被遗忘的部分和新部分。这是我观察到的。
func textFieldShouldEndEditing(_ textField: UITextField) -> Bool {
if searchTextField.text != "" {
return true
}
searchTextField.placeholder = "Type Something"
return false
}
在这里,当我按下 return 键而没有输入任何字母时,键盘不会关闭。相反,占位符文本会更改以通知用户键入内容。 returning false
来自 textFieldShouldEndEditing
.
的魔力
如果我在至少输入一个字符后按同一个 return 键,它只会关闭键盘。来自同一个 textFieldShouldEndEditing
.
的 returning a true
无论我是 return true
还是 false
.
,当我放置 textField.resignFirstResponder()
时我也没有观察到任何差异
结论:
true
关闭键盘。 false
阻止键盘关闭。
我通过实现函数 textFieldShouldReturn
并在该函数内调用 resignFirstResponder()
将键盘隐藏在按下的 return 键上。它工作得很好,但是当我在这个函数中 return false
时,键盘仍然隐藏着。现在在这里我不明白 returning true
或 false
的用途是什么,如果键盘在这两种情况下都隐藏了?
由于调用 resignFirstResponder
,键盘正在关闭。它与 textFieldShouldReturn
.
根据我的经验,textFieldShouldReturn
的 return 值几乎没有用。在绝大多数情况下,return true
或 false
.
我 return false
我对 testFieldShouldReturn
的所有使用。如果你 return true
并且你的 textFieldShouldReturn
实现将第一响应者设置为 UITextView
,文本视图最终会添加换行符。从 textFieldShouldReturn
返回 false
可确保不会发生这种情况。但这是基于几年前 iOS 4 或 5 的经验。我不知道 iOS.
textFieldShouldReturn
的 return 值回答了一个 不同的问题 。如果文本字段有控制事件 editingDidEndOnExit
的操作,that 将导致键盘关闭 unless textFieldShouldReturn
实现为 return false
.
我试过 true 或 false,键盘确实会关闭,代码如下:
func textFieldShouldReturn(_ textField: UITextField) -> Bool {
textField.resignFirstResponder()
return false
}
键盘是否关闭取决于“textField.resignFirstResponder()”, 如果删除它,键盘将不再关闭,无论是对还是错。
我已经有很长时间没有参与 Native iOS 了。将近2年。我刚刚学习了 swift 5 并从基础开始研究被遗忘的部分和新部分。这是我观察到的。
func textFieldShouldEndEditing(_ textField: UITextField) -> Bool {
if searchTextField.text != "" {
return true
}
searchTextField.placeholder = "Type Something"
return false
}
在这里,当我按下 return 键而没有输入任何字母时,键盘不会关闭。相反,占位符文本会更改以通知用户键入内容。 returning false
来自 textFieldShouldEndEditing
.
如果我在至少输入一个字符后按同一个 return 键,它只会关闭键盘。来自同一个 textFieldShouldEndEditing
.
true
无论我是 return true
还是 false
.
textField.resignFirstResponder()
时我也没有观察到任何差异
结论:
true
关闭键盘。 false
阻止键盘关闭。