заполните представление списка полем текстовой формы

#flutter #dart #flutter-layout

Вопрос:

В принципе, я хочу заполнить Listview полем текстовой формы. если бы кто-нибудь мог провести меня через это

ссылка git для полного кода

github.com/Nyctophilus/Thoth_Script я добавил некоторые изменения в свою главную проблему, теперь все плитки в представлении списка имеют одинаковое значение. он не читает мое изменение состояния набора! и ФАБ тоже

Код списка

 TextEditingController Tcon = TextEditingController();   Widget _list(context, index) {  if (index gt; 0) {  return ListView.builder(  itemCount: index,  itemBuilder: (BuildContext context, int index) {  return ListTile(  title: Text('Task: ${index   1} $Tcon'),  );  },  );  } else {  return ListView(  shrinkWrap: true,  padding: const EdgeInsets.all(30.0),  children: const lt;Widgetgt;[  Text("Add task..."),  ],  );  }  }  

Код текстового поля

 child: TextField(  textAlign: TextAlign.center,  controller: Tcon,  onSubmitted: (value) {  setState(() {  Tcon.text = value;  index  ;  });  },  ),  

Вот как это выглядит сейчас

Комментарии:

1. Listview with a Textformfield. вы имеете в виду гигантское поле текстовой формы или вам нужно несколько динамических текстовых полей

2. это похоже на текстовое поле для ввода текста пользователем , поэтому я беру его для динамического отображения в виде списка ,да

3. Не могли бы вы, пожалуйста, более подробно описать, что вы пытаетесь сделать? или где вам нужна помощь?

4. вы хотите создать динамический списокlt;Текстовое полеgt;?

5. пожалуйста, поделитесь ссылкой на github, чтобы я мог помочь вам лучше. И если я вас правильно понимаю, вы хотите добавить новую задачу в представление списка, когда вы нажмете плавающую кнопку, и TextFormField обновит textFormController и сохранит его в представлении списка

Ответ №1:

попробуйте обернуть текстовое поле в контейнер

 Container(  width: 650,  height: 45,  child: TextField(  textAlign: TextAlign.center,  controller: Tcon,  onSubmitted: (value) {  setState(() {  Tcon.text = value;  index  ;  });  },  ),  ),  

Комментарии:

1. я действительно пытался это сделать, но ничего не вышло. ошибка в размере представления списка, а не в текстовом поле.. о, я завернул представление списка в расширенное, и оно появилось. это была проблема выравнивания! gt;gt;

Ответ №2:

Tcon-это единый контроллер редактирования текста, который вы назначаете всем текстовым полям в списке. Вы должны создать список и назначить каждого его дочернего элемента каждому текстовому полю, чтобы каждое текстовое поле имело свой собственный контроллер.