關於Edittext默認彈出軟鍵盤為數字鍵


如果說我們只是輸入數字的話,我們可以直接在xml文件中:

android:inputType="number"

如果是身份證類型的話,我們可以這樣:

android:inputType="number"
android:digits="0123456789xyzXYZ"

我們也可以在java文件中這樣:

  EditText et = new EditText(this);
        et.setKeyListener(new NumberKeyListener() {
            // 0無鍵盤 1英文鍵盤 2模擬鍵盤 3數字鍵盤
            @Override
            public int getInputType() {
                // TODO Auto-generated method stub
                return 3;
            }

            // 返回允許輸入的字符
            @Override
            protected char[] getAcceptedChars() {
                // TODO Auto-generated method stub
                char[] c = {'a', 'b', 'c', 'd', 'e', '1', '2'};
                return c;
            }
          });

如果是和默認類型一樣,可以輸入任意字符的話,我們可以這樣,和上面的實現方式類似,只不過將 NumberKeyListener 換成了 TextKeyListener 而已:

 EditText et = new EditText(this);
        et.setKeyListener(new TextKeyListener(TextKeyListener.Capitalize.NONE, true) {
            @Override
            public int getInputType() {
                return InputType.TYPE_CLASS_PHONE;
            }
        });

這樣就可以啦!

由於本人水平有限,文中如有錯誤歡迎批評指正,小弟感激不盡!

最后,感謝兔子家的三哥(http://www.jianshu.com/u/87ae381f8e5b)對我工作的幫助和指導,謝謝!

  

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM