如何在列表视图中获取文本字段的值? (扑)

时间:2018-09-05 21:26:50

标签: listview dart flutter textfield

我有一个显示某些文本字段的列表视图构建器(项目的数量不是固定的,总是可变的)。有一个按钮委托来获取此文本字段的所有值。我该怎么办?

2 个答案:

答案 0 :(得分:0)

您必须将数据存储在包含ListView的有状态小部件中。

例如,您的数据可以是一个简单的列表,每个TextField都有一个项目。

在用户编辑字段时,使用onChanged的{​​{1}}回调来更新数据。

答案 1 :(得分:0)

首先像这样List定义一个List<TextEditingController> textFieldControllers=[]; 然后像这样遍历在List.builder中创建窗口小部件所使用的列表。

 for (var i = 0; i < typesItem.length; i++) {
  textFieldControllers.add(TextEditingController());
}

其中typesItem是创建Listbuilder窗口小部件时使用的List项,以便与窗口小部件动态保持相同的长度。您可以在initState方法上运行此代码 之后转到List.builder小部件并像这样初始化控制器。

 textFieldControllers[index] =  TextEditingController() ;

并像这样在您的return方法中设置TextField控制器

textFieldControllers[index]

因此,您可以通过使用

来获得全部价值。
  textFieldControllers[index].text;

您可以根据自己的情况进行操作以适应情况