Использование TextEditingController.addListener
- не лучший вариант для обнаружения изменений входного значения, поскольку оно срабатывает при других действиях:
- фокус теряется
- изменения положения фокуса
Внимательно изучите пример на этой странице , измените фокус полей, проверьте вывод консоли и изучите разницу.
Похоже, у вас есть два варианта:
- Использовать метод
TextField.onChange
для обнаружения изменений - или сравнения
TextField.text
значений текущего и предыдущего TextEditingController.addListener
звонки