остановить пользователя от ввода в поле ввода? - PullRequest
0 голосов
/ 16 февраля 2011

Я хочу, чтобы EidtText прекратил принимать ввод от пользователя, если длина входного текста больше 10 ... но он должен иметь возможность удалить уже доступный текст в EditText, даже если длина текста больше 10 ...

Может кто-нибудь помочь мне с кодом PLS ..

спасибо:)

Ответы [ 3 ]

1 голос
/ 16 февраля 2011

Вы пытались ограничить количество символов в EditText? Если не взглянуть на это

EditText et = new EditText(this);

int maxLength = 3;

InputFilter[] FilterArray = new InputFilter[1];

FilterArray[0] = new InputFilter.LengthFilter(maxLength);

et.setFilters(FilterArray);
0 голосов
/ 16 февраля 2011

Для справки:

В тех случаях, когда я хочу отследить более одного типа максимального предела (максимальный предел для нескольких полей, максимальный предел для отдельного поля), я смотрю на позицию выбора при редактировании.

Если позиция больше моего наименьшего максимального значения, я просто беру левые максимальные символы. Если позиция меньше моего максимального значения, я беру символы левой позиции, вычитаю ее из максимального значения, затем беру оставшиеся правые символы.

Это необходимо сделать только в том случае, если у вас будет более одного возможного ограничителя.

0 голосов
/ 16 февраля 2011

Используйте метод EditText setKeyListener для установки пользовательского KeyListener, который ограничивает длину текста в элементе управления

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...