美文网首页
Android设置Edittext只能输入数字/字母并弹出英文键

Android设置Edittext只能输入数字/字母并弹出英文键

作者: 信仰年輕 | 来源:发表于2022-08-01 14:30 被阅读0次

    方案一,亲测无效!

    // editText.setInputType(InputType.TYPE_CLASS_NUMBER);
     editText.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_NORMAL);
    editText.setKeyListener(DigitsKeyListener.getInstance("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"));
    

    测试发现是显示数字键盘, 亲测不行。

    方案二,亲测有效!

    editText.setKeyListener(new DigitsKeyListener() {
                @Override
                public int getInputType() {
                    return InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_NORMAL;
                }
    
                @NonNull
                @Override
                protected char[] getAcceptedChars() {
                    return "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".toCharArray();
                }
            });
    

    限制输入最大长度

      editText.setFilters(new InputFilter[]{new InputFilter.LengthFilter(10)}); //最大输入长度
    

    相关文章

      网友评论

          本文标题:Android设置Edittext只能输入数字/字母并弹出英文键

          本文链接:https://www.haomeiwen.com/subject/vmdrwrtx.html