2010-11-11 76 views
2

我真的很難受,因爲當連接到iPad的藍牙輸入設備時,我無法找到顯示軟鍵盤的方式。我做了網絡上一些搜索,這是結果:當連接藍牙輸入設備時,顯示軟鍵盤(iPad)

埃裏卡說訣竅是回答系統「沒有硬件鍵盤連接」。 我試着寫了UIKeyboardImpl類別和我overrided:

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

但是到現在爲止我還沒有得到任何東西。被調用的方法被調用,但沒有軟鍵盤。 Erica也表示應用程序通過動態鏈接工作,但我不知道我該如何實現它。我不需要在AppStore中,因爲這是一個私人應用程序,所以我不打擾拒絕。

在此先感謝

回答

6

好的。終於明白了。非常感謝大衛,馬提亞斯和恩里科。以下是具體步驟:

  • 進口專用框架GraphicsServices
  • 呼叫GSEventSetHardwareKeyboardAttached(NO)的viewDidLoad中
  • 裏面添加一個按鈕,通過調用

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

切換鍵盤我在http://code.google.com/p/btstack/wiki/iPhoneKeyboardHiding 上找到了這個功能現在我可以從軟鍵盤和從藍牙設備。

+0

不使用私有框架意味着您將被iTunes Store拒絕? – Slee 2010-12-19 00:53:25

+0

他說這是一個私人使用的應用程序,所以他不在乎。 – lensovet 2010-12-25 10:47:52

+0

從未在私有API上看到拒絕。 – Dmitry 2014-08-05 22:30:21

0

要避開它使用蘋果鍵盤您彈出鍵。也許你可以實現一個發送彈出鍵碼的動作?我認爲iSSH有一項功能,即使在連接藍牙鍵盤時,您也可以輕點屏幕鍵盤圖標使其顯示出來。