如何以编程方式使用 android:digits

Anu*_*Anu 6 android android-edittext

我目前正在使用

android:digits="qwertzuiopasdfghjklyxcvbnmQWERTZUIOPASDFGHJKLYXCVBNM "
Run Code Online (Sandbox Code Playgroud)

在 EditText 中的 android XML 中,它运行良好。用户只能输入 az、AZ 和空格中的字符(我不想让用户输入数字或特殊字符)。我想以编程方式将此属性添加到另一个编辑文本字段。谁能帮我以编程方式添加上述属性。我已经参考了以下链接,但它没有用

以编程方式更改 android:digits如何在 androids editText 中阻止特殊字符?没有安卓:数字

如果我使用

edtTxt.setKeyListener(DigitsKeyListener.getInstance("qwertzuiopasdfghjklyxcvbnmQWERTZUIOPASDFGHJKLYXCVBNM"));
Run Code Online (Sandbox Code Playgroud)

数字小键盘正在打开。

Feb*_*lix 5

试试下面的代码

edtTxt.setInputType(InputType.TYPE_CLASS_TEXT);
        edtTxt.setFilters(new InputFilter[]{
                new InputFilter() {
                    public CharSequence filter(CharSequence src, int start,
                                               int end, Spanned dst, int dstart, int dend) {
                        if (src.equals("")) {
                            return src;
                        }
                        if (src.toString().matches("[a-zA-Z ]+")) {
                            return src;
                        }
                        return "";
                    }
                }
        });
Run Code Online (Sandbox Code Playgroud)