Ввод только текста EditText Android - PullRequest
1 голос
/ 24 ноября 2010

Я хочу запретить пользователю вводить какой-либо специальный символ или цифру в текст для редактирования, но программно это должно позволять.

Я знаю, что могу сделать inputType="text", но это касается только программной клавиатуры. Я думаю, что это может быть достигнуто с TextWatcher, но я не могу гель все. Кто-нибудь может помочь?

Ответы [ 3 ]

1 голос
/ 19 июля 2014

Вы можете отфильтровать введенный текст следующим образом,

etTwamboxName.setFilters(new InputFilter[] { new InputFilter() {
            public CharSequence filter(CharSequence src, int start, int end,
                    Spanned dst, int dstart, int dend) {

                Log.e("", "===> " + src);
                if (src.equals("")) { // for backspace
                    return src;
                }

                if (src.toString().matches("[a-zA-Z ]+.")) {
                    return src;
                }

                return "";
            }
        } });
1 голос
/ 27 июля 2015

Попробуйте, Ссылка

android:digits="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
android:inputType="text"

Для получения дополнительной информации вы можете проверить http://developer.android.com/reference/android/widget/TextView.html#attr_android:digits

1 голос
/ 24 ноября 2010
editTextView.setInputType(InputType.TYPE_TEXT_VARIATION_NORMAL);

Существует много других типов ввода для пароля, адреса электронной почты и т. Д. См. Эта ссылка API

Спасибо:)

...