2011-08-19 52 views
0

我有一個正在開發的應用程序,它使用連接到Motorola Xoom的USB HID設備進行一些輸入。但是,大部分時間我仍然希望使用屏幕鍵盤。如何以編程方式禁用/啓用Android中的物理鍵盤?

有沒有辦法在Android 3.0+中禁用/啓用硬件鍵盤的使用?如果沒有鍵盤連接,我希望應用程序的行爲類似於它。

+0

恕我直言,這對您的應用程序可用性肯定不好。用戶會因爲他/她不能使用他/她的鍵盤而感到沮喪。嘗試製作更靈活的應用程序。 – m0skit0

+0

另外我不認爲有一種方法:你爲什麼想這樣做?如果你的應用程序正在接收來自用戶的輸入,爲什麼你會關心它來自哪裏,而不是將選擇留給用戶? – Select0r

回答

1

以及一個解決方案,你能想到的是..

@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) { 
    return true; 
} 
@Override 
public boolean onKeyLongPress(int keyCode, KeyEvent event) { 
    return true; 
} 
@Override 
public boolean onKeyUp(int keyCode, KeyEvent event) { 
    return true; 
} 

這將避免鍵盤按鍵中的任何行動。但是你不能禁用android鍵盤,因爲它會使用一些本地方法。

相關問題