【发布时间】:2016-12-09 21:47:31
【问题描述】:
(到目前为止)我有两个视图控制器,它们都至少有一个文本字段。
当用户点击文本字段时,键盘会弹出。
我已经准备好所有的代码来向上移动内容,然后在发生这种情况时再次向下移动,(一切都在滚动视图中,我被认为是最佳实践)
当用户在文本字段之外点击时,我还有代码可以关闭键盘。
在第一个视图控制器上它工作得很好,但在第二个我有一个 UIPickerView 占用了文本字段下方的大量空间。因此,当用户点击最明显的空间量时会发生什么,他/她实际上是在点击滚动视图,但没有任何反应。但是,如果用户在一个非常小的空白区域点击,而不是滚动视图,键盘就会关闭。
如何使用 UIPickerView 关闭键盘? 这是我的情况的图像
这是部分代码
func textFieldShouldClear(_ textField: UITextField) -> Bool {
self.view.endEditing(true)
return false
}
func textFieldShouldReturn(_ textField: UITextField) -> Bool {
self.view.endEditing(true)
return false
}
func dismissKeyboard() {
view.endEditing(true)
}
【问题讨论】:
-
如果要在触摸选择器时关闭键盘,只需在显示键盘时设置
picker.userInteractionEnabled = false,并在键盘关闭时启用它
标签: swift