Как установить фильтр ввода для edittext в android для десятичного числа

StackOverflow https://stackoverflow.com/questions/8354122

Вопрос

У меня есть текст редактирования, в котором я хочу ввести процентное значение, то есть десятичное значение, поэтому я хочу ограничить пользователя вводом только значения менее 100 в editText.

Пример: 1) если он хочет ввести значение больше 100 , он не должен позволять ему вводить это.

2) Если он хочет, чтобы t0 ввел десятичное значение меньше 100, то есть 50,5444 , то он должен позволить ему ввести это значение

Я также нашел эту ссылку , где я могу установить фильтр для целочисленного значения максимум до 100, но это не позволяет мне вводить десятичное значение

ссылка: http://tech.chitgoks.com/2011/06/27/android-set-min-max-value-an-edittext-accepts/

Кто-нибудь может мне помочь.

Это было полезно?

Решение

Здравствуйте, вы можете использовать TextWatcher , примените его к своему генеральному кодовому методу.и реализовать три метода, которые он предоставляет.Затем, когда вы вставляете новое значение, вы можете использовать RegEx для проверки его действительности.

Надеюсь, это поможет!

Другие советы

Вот полный код реализации, который я использовал

родовое слово

Фактически вы можете изменить полезный фрагмент кода, указанный в ссылке, упомянутой в вопросе, следующим образом.Также при желании вы можете указать максимальное количество десятичных разрядов, которое должно иметь процентное значение, и использовать средство сопоставления шаблонов для возврата кода "", если ввод не соответствует предполагаемому шаблону.

родовое слово

Вы можете использовать это как:

родовое слово
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top