2014-05-02 54 views
5

我有一个UITextField它被设置为first responder,我后来证实它已被设置为first responder,键盘弹出以及。键盘显示iOS应用程序,但文本字段没有响应(键盘按钮不是)

但是,当我尝试在键盘上输入时没有输入任何内容,而且键也不亮。

一个非常奇怪的事情是当我插入蓝牙物理键盘时,我可以在字段中输入字符!然后,当我关闭键盘并且虚拟键盘再次出现时,我无法输入。

我在互联网上搜索了解决方案,但没有效果。我打电话makeKeyAndVisible为我的UIWindow这是一个建议解决方案的人。

+1

你应该提供一些更多的细节... –

+0

当蓝牙连接,是你设置的其他设备像扫描仪等输入... –

+0

入住这一点 - ** HTTP://stackoverflow.com/questions/ 12447875/keyboard-and-cursor-show-but-i-cant-type-in​​side-uitextfields-and-uitextviews ** and ** http://stackoverflow.com/questions/19196609/uitextfield-in-ios7-simulator-不要采取任何输入从mac键盘** –

回答

1

你可以尝试的第一件事是按自己的命令键,释放它,然后开始输入。有时候这可以启用模拟器中的键盘。

如果上一步失败,如果使用模拟器,有时会出现键盘问题。要验证它不是您的代码,请在实际设备上运行并进行测试。

如果它在设备上工作,然后清理项目,重置模拟器,关闭模拟器,重新启动XCode,再试一次。

如果问题仍然存在,请执行上述相同步骤,但在重新启动XCode之前重置计算机。

+0

我只是在现场设备上进行测试,并有我的代码一个单独的部分,并不能很好的工作与模拟器(不会涉及到,因为它在这里不相关)。我试过重置电脑和XCode,但没有运气。 – Locksleyu

4

我有类似的问题。我的问题是关键窗口的主视图框架小于窗口边界,所以虚拟键盘实际上位于主视图框架之外。点击虚拟键盘完全没有。

我该怎么做: 1.检查关键窗口主视图的框架。 2.检查是否将根视图控制器分配给密钥窗口。

我在一个iPad应用程序的旧代码库上有这个问题,它没有用于主窗口的根视图控制器,因此在旋转后不能正确调整大小。

这可能值得一试。

0

您应该重置iOSSimulator及其内容和设置,然后退出并重新启动iOS模拟器。有效。

这正是你从SVN更新代码时发生的。清理代码,在从SVN更新源代码时重新启动模拟器,特别​​是使用Xcode5。

1

您的键盘没有收到触摸事件。发生这种情况的原因有很多。有些是

  1. 一个不可见的视图是在键盘的前面,并消耗触摸事件。查看是否属于这种情况的一个好工具是火花检查器(有一条免费线索),它可以从不同角度向您展示应用中的所有视图,以发现意外的行为。

  2. 键盘一些如何禁用用户交互。如果您在您的代码提示键盘之前将您当前的父视图设置为启用用户交互,那么将帮助您排除这些可能性。