创建TextField列表

时间:2019-09-29 21:37:33

标签: flutter dart

我想创建一个列表,用户希望有多少个包含 TextField 的初始计数为两个,并且在按下按钮时再添加一个按钮,在单击以清除所有字段时再单击一个按钮。然后,根据输入计算标准偏差。做到这一点的最佳方法是什么?制作自定义 Row 小部件?使用 List 小部件或 ListView.builder 小部件吗?

1 个答案:

答案 0 :(得分:0)

              children: <Widget>[
                Flexible(
                  fit: FlexFit.tight,
                  flex: 5,
                  child: FractionallySizedBox(
                    widthFactor: 0.9,
                    child: TextField(
                      decoration: InputDecoration(
                        border: OutlineInputBorder()
                      ),
                      controller: count,
                    ),
                  ),
                ),
                Flexible(
                  fit: FlexFit.tight,
                  flex: 3,
                  child: FractionallySizedBox(

                    widthFactor: 0.9,
                    child: RaisedButton(
                      child: Text("Press here"),
                      padding: EdgeInsets.symmetric(vertical: 20),
                      onPressed: () {
                        fi = int.parse(count.text);
                        setState(() {});
                      },
                    ),
                  ),
                ),
              ],
            ),
          ),
          fi == null
              ? Offstage()
              : ListView.builder(
                physics: NeverScrollableScrollPhysics(),
                padding: EdgeInsets.all(10),
                  shrinkWrap: true,
                  itemCount: fi,
                  itemBuilder: (BuildContext context, int index) {
                    return Padding(
                      padding: const EdgeInsets.all(8.0),
                      child: TextField(
                        decoration: InputDecoration(
                          border: OutlineInputBorder(),
                          labelText: index.toString()
                        ),
                      ),
                    );
                  },
                ),
        ],
      ),
    ),
  ),
);  }}

只要您想呈现动态文本字段,就可以这样做,那么您必须遵循上面的代码,谢谢