В Android можно добавлять фильтры, делая что-то вроде этого, чтобы добавить в поле ограничение 3 символа:
editText.setFilters(new InputFilter[] { new InputFilter.LengthFilter(3) });
А как же удалить уже установленный фильтр? Моя проблема заключается в том, что я буду переключаться между длиной от 3 до 4 символов в поле в зависимости от выбора пользователем. Просто запуск вышеуказанного кода кажется таким, что он будет генерировать дополнительную работу для GC.
Я мог бы, конечно, добавить пару переменных экземпляра, соответствующих каждому фильтру, и просто добавить их, когда это необходимо, и тогда у меня будут только два фильтра, которые подходят для этого случая. Было бы интересно узнать, возможно ли полностью удалить фильтр. Возможно, пройдя нулевое значение?