2011-05-11 71 views
0

我有一個OpenGL應用程序需要顯示軟鍵盤的設備沒有物理的用戶輸入,如用戶名或數字在一些情況下。在數字輸入的情況下,是否有任何方法顯示數字鍵盤而不是字母鍵盤?我沒有使用任何文本編輯字段或任何東西,只是InputMethodManager如何顯示沒有輸入欄的軟數字小鍵盤?

((InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE)).showSoftInput(glView, InputMethodManager.SHOW_FORCED); 

我發現的唯一方法,看起來遠程幫助別人是InputMethodManager.setInputMethod但這需要一個IBinder令牌和String ID,這兩者都不在the documentation中解釋得非常好。不過,我覺得這不是正確的路要走。

如果我使用的是編輯字段,它會很簡單明顯,我已經找到了幾十個答案,但這不是我所做的,因爲它是一個OpenGL遊戲,所以我只需要如上所述手動顯示鍵盤。

回答

0

可能不是您正在尋找的答案,因爲它比真正的解決方案更像是黑客攻擊,但是有幾件事可能會奏效(即如果您無法獲得真正的解決方案)。

一個EditTextView.INVISIBLE集合。雖然,您可能無法在此處設定焦點。

將一個EditText放在GLSurfaceView的後面並將其聚焦。所以它從技術上看是可見的(從代碼的角度來看),但用戶不可見。