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

mar*_*cio 3 iphone cocoa-touch objective-c uikeyboard ipad

我真的很喜欢我的脑袋,因为当连接到iPad的蓝牙输入设备时,我无法找到显示软键盘的方法.我在网上搜索了一下,这就是结果:

埃里卡说,诀窍是回答系统"没有连接硬件键盘".我试图为UIKeyboardImpl编写一个类别,但我覆盖了:

- (BOOL)isInHardwareKeyboardMode {
    DEBUG(@"is called");
    return NO;
}   
Run Code Online (Sandbox Code Playgroud)

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

提前致谢

mar*_*cio 7

好.终于明白了.非常感谢大卫,马蒂亚斯和恩里科.以下是步骤:

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

    static void toggleKeyboard(UIKeyboardImpl * keyImpl){
    if (UIKeyboardAutomaticIsOnScreen()) {
        UIKeyboardOrderOutAutomatic();
    } else {
        UIKeyboardOrderInAutomatic();
    }
    
    Run Code Online (Sandbox Code Playgroud)

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