我正在开发一个具有类似SMS.app的UI的消息传递应用程序。对话屏幕底部有文字输入字段,用键盘向上移动。点击会话区域通过在我们使用的UITextView上调用resignFirstResponder方法来解除键盘。
这通常可以正常工作,但用户会报告一个我无法重现和修复的奇怪错误。人们说有时屏幕键盘在点击会话区域时不会消失,尽管文本输入字段会丢失输入焦点。一旦视图进入异常状态,用户就可以使用键盘输入,但输入的文本在任何地方都不可见。此错误发生在一个对话视图中,从那时起,其他视图中没有任何文本输入字段无法按预期工作。阻止这种奇怪行为的唯一方法是从多任务处理栏中删除应用程序。
更奇怪的是,在UINavigationController中的视图控制器之间导航时键盘保持可见。我注意到两件事:
其他遇到同样问题的人。关于什么可能导致这个bug的任何想法?
答案 0 :(得分:0)
如果文本字段有委托,并且委托为textFieldShouldEndEditing
返回NO,则resignFirstResponder
将失败。我不知道你看到的是这个问题,还有待检查的事情。
答案 1 :(得分:0)
将textfield / textview委托设置为fileowner。