如何在flutter_slidable(Slidable)中传递listview.builder

时间:2019-09-03 11:06:36

标签: flutter

这只是一个简单的待办事项列表应用程序。我想实现一个功能,使我在向右滑动时将任务标记为完成,而在向左滑动时将任务删除。此应用使用数据库,并将添加的任务存储在类型数据库(List<TodoItem> Itemlist= <TodoItem>[];)列表中。

是否可以使用flutter_slidable?。

我尝试使用Dismissible,但只能删除任务。

  List<TodoItem> Itemlist= <TodoItem>[];

     SingleChildScrollView(
                      child: ListView.builder(
                          scrollDirection: Axis.vertical,
                          shrinkWrap: true,
                          itemCount: Itemlist.length,
                          itemBuilder: (BuildContext context, int index){
                            String item = Itemlist[index].toString();
                          return Dismissible(
                              key: Key(UniqueKey().toString()),
                              onDismissed: (direction){
                                setState((){
                                    deleteItem(Itemlist[index].id, index);
                                }
                                );
                              },

                              background: Container(
                                child: Icon(Icons.delete),
                                color: Colors.red,
                                alignment: Alignment.centerLeft,
                              ),
                              child: Itemlist[index],
                          );
                          }
                      ),
                    )

我想获得与以下相同的结果,但是不确定如何在listview.builder中传递Slidable

expected result

1 个答案:

答案 0 :(得分:0)

  1. 用滑动式包装平铺小工具
  2. 设置可滑动的“ actionPane”和“ actions”参数