Flutter:具有多个条目功能的小部件列表

时间:2019-12-22 04:55:30

标签: flutter dart widget

我正尽我所能实施以下内容

layout mockup

我正在考虑创建一个窗口小部件列表,列表中的每个窗口小部件都带有+符号,并且能够添加/删除该类别下的多个项目

如果您需要汇总小部件列表中所有类别的总数,该怎么存储呢?

我当时想创建一个主列表并存储键值对,但是当您需要删除项目时,这将很难跟踪

我还考虑了草稿输入,因此用户将能够保存他们当前输入的内容,而我需要将所有当前数据重新填充回相关的已输入类别

1 个答案:

答案 0 :(得分:0)

您可以将数据类创建为

class Data{
    String name;
    List<double> quantities;
    Data({this.name,this.quantities});
    //This will return the total for one row 
    getTotal(){
        double total=0;
        quantities.map((quantity)=>total+=quantity);
        return quantity;
    }
}

然后,您可以使用List<Data>并输入值并使用ListView.Builder

List<Data> allData=List();
//You have to store your initial data in the list 1st
return ListView.Builder(
    itemCount:allData.length,
    builder:(context,position){
     Data data=allData[position];
     return ListTile(
         //You can put your row here with the data 
     ); 
    }
);

然后在添加按钮onPressed中,您需要输入并将金额添加到数据对象的quantities列表中,您只需调用setState((){})