#flutter
#flutter
Вопрос:
TextFormField(
onChanged: (value){
currentoption = value;
alloptions.add(currentoption.toString());
},
style: TextStyle(
color: Colors.white,
),
decoration: InputDecoration(
border: InputBorder.none,
hintText: " Enter Option",
hintStyle: TextStyle(
color: Colors.white70,
),
),
),
Я пытаюсь сохранить вводимый текст для сохранения в списке, если он завершает ввод текста, но я печатаю значение списка alloptions, он печатает символ за символом, как вводится слово.
Комментарии:
1. Может быть, вы просто забыли вызвать
setState
функцию вonChanged
обратном вызове?2. нет, как будто я набираю «prince», массив похож на [p, pr, pri, prin, princ, prince]
Ответ №1:
это потому, что каждый раз, когда вы вводите текстовое поле, оно запускает onChange: и в вашем onChange: используйте variable.add(значение.toString) Это означает, что каждый раз, когда вы вводите текстовое поле, оно добавляет новый текст после старого текста
Комментарии:
1. можете ли вы сказать мне, как этого добиться
2. если да, вы можете сделать простое решение, такое как print alloption[выделение. длина-1] но это будет низкоэффективное решение, кстати