当连接蓝牙输入设备时,显示软键盘(iPad)
问题描述:
我真的很难受,因为当连接到iPad的蓝牙输入设备时,我无法找到显示软键盘的方式。我做了网络上一些搜索,这是结果:当连接蓝牙输入设备时,显示软键盘(iPad)
- 用非常简短的回答How can I detect if an external keyboard is present on an iPad?
- 应用埃丽卡丧盾为苹果蠹ENV开发上计算器的一个问题http://www.tuaw.com/2010/06/02/hacksugar-bringing-back-the-on-screen-keyboard/
埃里卡说诀窍是回答系统“没有硬件键盘连接”。 我试着写了UIKeyboardImpl类别和我overrided:
- (BOOL)isInHardwareKeyboardMode {
DEBUG(@"is called");
return NO;
}
但是到现在为止我还没有得到任何东西。被调用的方法被调用,但没有软键盘。 Erica也表示应用程序通过动态链接工作,但我不知道我该如何实现它。我不需要在AppStore中,因为这是一个私人应用程序,所以我不打扰拒绝。
在此先感谢
答
好的。终于明白了。非常感谢大卫,马提亚斯和恩里科。以下是具体步骤:
- 进口专用框架GraphicsServices
- 呼叫GSEventSetHardwareKeyboardAttached(NO)的viewDidLoad中
-
里面添加一个按钮,通过调用
static void toggleKeyboard(UIKeyboardImpl * keyImpl){ if (UIKeyboardAutomaticIsOnScreen()) { UIKeyboardOrderOutAutomatic(); } else { UIKeyboardOrderInAutomatic(); }
切换键盘我在http://code.google.com/p/btstack/wiki/iPhoneKeyboardHiding 上找到了这个功能现在我可以从软键盘和从蓝牙设备。
答
要避开它使用苹果键盘您弹出键。也许你可以实现一个发送弹出键码的动作?我认为iSSH有一项功能,即使在连接蓝牙键盘时,您也可以轻点屏幕键盘图标使其显示出来。
不使用私有框架意味着您将被iTunes Store拒绝? – Slee 2010-12-19 00:53:25
他说这是一个私人使用的应用程序,所以他不在乎。 – lensovet 2010-12-25 10:47:52
从未在私有API上看到拒绝。 – Dmitry 2014-08-05 22:30:21