一尘不染

在dart中将元素插入列表的开头

flutter

我只是在Flutter中创建一个简单的ToDo应用。我正在管理列表中的所有待办事项。我想在列表的开头添加任何新的待办事项。我能够使用这种解决方法来实现这一目标。有什么更好的方法吗?

void _addTodoInList(BuildContext context){
    String val = _textFieldController.text;

    final newTodo = {
      "title": val,
      "id": Uuid().v4(),
      "done": false
    };

    final copiedTodos = List.from(_todos);

    _todos.removeRange(0, _todos.length);
    setState(() {
      _todos.addAll([newTodo, ...copiedTodos]);
    });

    Navigator.pop(context);
  }

阅读 238

收藏
2020-08-13

共1个答案

一尘不染

使用insert()of的方法List添加项目,这里的索引将是0在开头添加项目。例:

List<String> list = ["B", "C", "D"];
list.insert(0, "A"); // at index 0 we are adding A
// list now becomes ["A", "B", "C", "D"]
2020-08-13