2010-01-03 88 views
4

我不想顯示虛擬鍵盤。如何隱藏虛擬鍵盤

我嘗試了下面的方法,但它沒有任何區別。

InputMethodManager imm =  InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); 
imm.hideSoftInputFromWindow(enter_count.getWindowToken(), 0); 

enter_count是我的編輯文本 我曾嘗試在INPUTMETHOD經理讀了,但不能跟着它。

我可以設置所謂的enter_count我的編輯文本的輸入類型如下

enter_count.setInputType(InputType.TYPE_NULL); 

但我不能指定只接受數字輸入

能否請你給我一個合理的解決方案只是不顯示虛擬鍵盤而不會丟失僅接受物理鍵盤上的數字輸入的能力。

回答

1

你在你的AndroidManifest.xml文件

使用此所以加

機器人:configChanges = 「方向| keyboardHidden」

但隨着你的鍵盤會始終隱藏在該活動中。

Wouter

+1

我想你的建議和 機器人:configChanges =「keyboardHidden」 以及但是沒有什麼不同 – 2010-01-04 13:32:42

3

這個怎麼樣?

EditText editText = (EditText) findViewById(R.id.edt_hello); 

editText.setKeyListener(new NumberKeyListener() { 

    @Override 
    public int getInputType() { 
     return InputType.TYPE_NULL; 
    } 

    @Override 
    protected char[] getAcceptedChars() { 
     return new char[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' }; 
    } 
}); 
+0

非常感謝它完美地工作。 – 2010-01-04 13:50:16

+7

然後,您應該將答案標記爲已接受 – 2010-08-30 14:35:24

0

SendData()功能

InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); 
    imm.hideSoftInputFromWindow(textEntered.getWindowToken(),0); 

添加這個或使用本

InputMethodManager.RESULT_UNCHANGED_SHOWN); 
imm.toggleSoftInput(InputMethodManager.HIDE_IMPLICIT_ONLY, 0); 

這項工作:)

1

您是否嘗試過在清單的Activity標記中添加此項? 機器人:windowSoftInputMode =「stateHidden」