Я могу отключить EditText
, но тогда пользователь просто не сможет изменить текст. Поведение, которое я пытаюсь реализовать, заключается в том, что, если пользователь пытается что-то напечатать (или любой другой изменяющийся метод, такой как вставка), отображается сообщение типа «Вы не можете редактировать этот текст из-за чего-то».
Сначала я думал, что смогу показать сообщение, используя TextWatcher
, но, похоже, нет способа отменить изменение. Как я могу добиться того поведения, которое ищу? Единственный способ, которым я мог думать, - это следующий действительно грязный способ.
Иметь резервную копию текста EditText. Когда EditText изменяется,
если isReverting
равно false, показать сообщение и установить для isReverting
значение
правда. Если isReverting
истинно, просто установите его в ложь. Установите резервную копию
к EditText.