Ios 在屏幕上没有UITextView的情况下,如何与iPhone键盘交互?

Ios 在屏幕上没有UITextView的情况下,如何与iPhone键盘交互?,ios,keyboard,first-responder,Ios,Keyboard,First Responder,我们希望我们的应用程序能够显示其中一个内置键盘(特别是数字键盘),并能够响应按键等操作,但不能通过屏幕上的任何操作,如UITextView。事实上,我们只是想把这些按键通过电线发送到其他地方,而不想用键盘重新发明轮子。把它想象成我们使用键盘作为UIButtons的矩阵,而不是我们必须手动创建自己的,然后担心外观和感觉等等 也就是说 如何在屏幕上显示没有UITextView或类似控件的键盘 我们如何选择显示哪一个(同样,我们想要数字的。) 我们如何回应按键向下/按键向上/按键向上的信息或您收到的信

我们希望我们的应用程序能够显示其中一个内置键盘(特别是数字键盘),并能够响应按键等操作,但不能通过屏幕上的任何操作,如
UITextView
。事实上,我们只是想把这些按键通过电线发送到其他地方,而不想用键盘重新发明轮子。把它想象成我们使用键盘作为UIButtons的矩阵,而不是我们必须手动创建自己的,然后担心外观和感觉等等

也就是说

  • 如何在屏幕上显示没有
    UITextView
    或类似控件的键盘
  • 我们如何选择显示哪一个(同样,我们想要数字的。)
  • 我们如何回应按键向下/按键向上/按键向上的信息或您收到的信息

  • 您需要一个隐藏的UITextField,其中包含指定的第一响应者。您可以使用来响应键盘输入


    不过,如果没有按键的屏幕反馈,这将是一个不同寻常的用户界面

    隐藏UITextView最安全的位置可能是CGRectMake(0,view.frame.size.height,whateverWidth,whateverHeight)。然后,当您添加子视图时:根据定义,它将脱离屏幕。但是,如果允许旋转,您可能需要在didRotateFromInterfaceOrientation上重新定位帧-可能将x和y都设置为最大值(view.frame.size.height,view.frame.size.width),这将始终在屏幕外

    否则,如果隐藏是一个问题,您可以使用alpha.03-这几乎是不可见的,但仍然对用户交互作出响应。这并不是解决这个问题的答案,但请把它放在你的后口袋里,以备将来参考

    祝你好运


    Damien

    有反馈,但其形式是图形,而不是可编辑的文本字段。我们不是创建自己的按钮矩阵,而是简单地使用键盘,就好像它们是按钮一样。你能把一些隐藏的东西作为第一反应者吗?我认为这是不允许的。(为了达到同样的效果,我倾向于使用屏幕外的版本。)最后一件事。。。出于好奇,您可以通过IB设置第一响应者,还是必须通过代码设置?(我们一直在做后者,但我一直很讨厌。)不明白为什么隐藏状态会影响第一响应者。如果是这样,你可以把它从屏幕上移开。第一响应者状态是通过代码设置的,不知道如何通过IB进行设置,因为它可能在运行时发生变化。在某个地方有最初的急救人员,但我记不起在哪里(甚至可能是OSX的东西,我远离我的mac ATM)