发现的确切问题:我选择了一个文本字段并输入了一个值。然后我在tableview单元格中选择一个新的文本字段,但是!当选择“didEndEdit”的第一个文本字段时,它会重新加载tableview(按设计)。这导致“流氓键盘”。选中的单元格中的文本字段显示其键盘,但然后重新加载tableview会破坏对键盘的引用,从而导致键盘卡住。
有没有人遇到过这个,如果有的话,有什么解决方案?我需要在文本字段结束编辑后重新加载整个表格(这样用户每次完成输入值时都不需要按下按钮。
背景信息,自新发现以来可能不相关。
我有一个UIViewController
,其中的视图包含tableView
以上的文本字段。在tableview内有2种可能的细胞类型。
类型1:有1个文本字段
类型2:有2个文本字段。
如果用户转到(例如)indexPath.row 2并选择了文本字段,那么我遇到键盘管理问题,然后从编辑indePath.row 2 textfield,选择indexPath.row 3 textfield。第二个texfield未被选中,键盘仍然存在,并且对任何按键都没有响应。
如上所述,同样的问题仍然存在于类型1和2的单元格中。
我已尝试self.view.endEditing(True)
以及辞去所有文本字段的第一响应者。这些都不会让这个“Rogue”键盘消失。
在文本字段结束编辑后,我已将问题隔离到重新加载我的tableview 。由于某种原因,talbeView.reloadData()会导致流氓键盘...原因超出了我...仍在寻找修复