代码之家  ›  专栏  ›  技术社区  ›  marcio

连接蓝牙输入设备时显示软键盘(iPad)

  •  3
  • marcio  · 技术社区  · 15 年前

    我真的很生气,因为当有蓝牙输入设备连接到iPad时,我找不到显示软键盘的方法。我在网上做了一些搜索,结果是:

    艾丽卡说,诀窍是回答系统“没有硬件键盘连接”。 我试图为uikeyboardimpl编写一个类别,我覆盖了:

    - (BOOL)isInHardwareKeyboardMode {
        DEBUG(@"is called");
        return NO;
    }   
    

    但直到现在我还没有得到任何东西。将调用重写的方法,但没有软键盘。 Erica还说这个应用程序是通过动态链接工作的,但我不知道如何完成它。我不需要待在AppStore中,因为这是一个私人应用程序,所以我不必为拒绝而烦恼。

    提前谢谢

    2 回复  |  直到 15 年前
        1
  •  7
  •   marcio    15 年前

    好啊。终于明白了。多谢大卫、马提亚和恩里克。步骤如下:

    • 导入私有框架图形服务
    • 调用viewdidLoad中的gseventsethardwarekeyboardattached(no)
    • 添加一个按钮,通过调用

      static void toggleKeyboard(UIKeyboardImpl * keyImpl){
      if (UIKeyboardAutomaticIsOnScreen()) {
          UIKeyboardOrderOutAutomatic();
      } else {
          UIKeyboardOrderInAutomatic();
      }
      

    我发现这个函数在 http://code.google.com/p/btstack/wiki/iPhoneKeyboardHiding 现在我可以同时从软键盘和蓝牙设备接收输入。

        2
  •  0
  •   CodeWombat    15 年前

    要使用Apple键盘绕过它,请按eject键。也许您可以实现一个发送弹出键代码的操作?我认为ISSH有一个功能,你可以点击屏幕上的键盘图标来打开它,即使蓝牙键盘已经连接。