【发布时间】:2020-09-20 00:54:17
【问题描述】:
晚上好,
我正在尝试关闭模态呈现的 UITableView 上的键盘。
UITextView 创建为 UINib 并在 UITableView 中注册。
我尝试在情节提要中将键盘设置为“Dismiss On Drag”,但没有任何效果。我还写了以下代码,并在UINib上连接了UITextFieldDelegate。
这是UITextView Nib 中的代码。
func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
if(text == "\n") {
textView.resignFirstResponder()
return false
}
return true
}
查看已加载:
override func awakeFromNib() {
super.awakeFromNib()
textView.delegate = self
}
【问题讨论】:
-
您可能需要提供更多关于您的结构的信息。我刚刚做了一个快速测试:带有
UITextField...UITableViewController和Dismiss on Drag在表格视图上设置的自定义单元格... 以模态方式呈现... 点击单元格的文本字段开始编辑,然后出现键盘...然后我在表格视图上向下拖动一点,键盘被关闭。 -
不是 UITextField,是 UITextView。
-
我看不出使用
UITextField或UITextView有什么区别 - 键盘会以任何一种方式正确关闭...当然,如果我正在滚动 within 文本视图它不会关闭键盘(这是我们不想要的)。也许尝试组合一个minimal reproducible example,因为似乎必须发生其他事情。
标签: ios swift uitableview uitextview