键盘没有被解雇

我正在开发一个具有类似于SMS.app的UI的消息传递应用程序。 对话屏幕的底部有一个文本输入框,通过键盘向上移动。 通过在我们使用的UITextView上调用resignFirstResponder方法,点击会话区域会解除键盘关闭。

这通常工作正常,但用户报告一个奇怪的错误,我不能再现和修复。 人们说有时屏幕键盘在点击会话区域时不会消失,尽管文本输入区域失去了输入焦点。 一旦视图进入状态异常的用户可以使用键盘输入,但输入的文本在任何地方都不可见。 此错误发生在其中一个对话视图中,并且自此之后其他视图中的任何文本输入字段都无法按预期工作。 阻止这种奇怪行为的唯一方法是从多任务栏中阻止应用程序。

更奇怪的是,键盘在UINavigationController中的视图控制器之间导航时保​​持可见。 我注意到两件事情:

  • 如果从具有活动文本字段和可见键盘的会话视图控制器中点击“<返回”,则键盘会在视图更改时消失。
  • 如果在会话视图控制器中点击“<返回”,且文本字段和可见键盘不可用,则键盘在视图更改时不会消失。
  • 任何人遇到同样的问题。 任何想法可能会导致此错误?


    如果文本字段有委托,并且委托对textFieldShouldEndEditing返回NO,则resignFirstResponder将失败。 我不知道这是你看到的问题,而是要检查。


    将textfield / textview委托设置为fileowner。

    链接地址: http://www.djcxy.com/p/44287.html

    上一篇: Keyboard not dismissed

    下一篇: Get firstresponder in Objective C