【问题标题】:display soft keyboard (iPad) when is connected a bluetooth input device连接蓝牙输入设备时显示软键盘 (iPad)
【发布时间】:2011-05-08 05:38:20
【问题描述】:

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

Erica 说诀窍是回答系统“没有连接硬件键盘”。 我试图为 UIKeyboardImpl 编写一个类别,但我重写了:

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

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

提前致谢

【问题讨论】:

    标签: iphone objective-c cocoa-touch ipad uikeyboard


    【解决方案1】:

    好的。终于明白了。非常感谢 David、Matthias 和 Enrico。步骤如下:

    • 导入私有框架 GraphicsServices
    • 在 viewDidLoad 中调用 GSEventSetHardwareKeyboardAttached(NO)
    • 添加一个通过调用来切换键盘的按钮

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

    我在http://code.google.com/p/btstack/wiki/iPhoneKeyboardHiding 上找到了这个功能 现在我可以同时从软键盘和蓝牙设​​备输入。

    【讨论】:

    • 不使用私有框架意味着你会被 iTunes 商店拒绝?
    • 他说这是一个私人使用的应用程序,所以他不在乎。
    • 从未见过私有 API 被拒绝。
    • iOS 10 怎么样?有什么帮助吗?
    【解决方案2】:

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

    【讨论】:

      猜你喜欢
      • 2011-12-17
      • 2011-11-09
      • 1970-01-01
      • 2018-09-15
      • 2013-02-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-12
      相关资源
      最近更新 更多