【问题标题】:How to return back an element of list - Flutter如何返回列表中的元素 - Flutter
【发布时间】:2021-02-07 09:56:05
【问题描述】:

我的应用中有这三个列表,但我只能返回其中一个,我该如何对它们三个执行此操作?

class TaskList extends StatelessWidget {
TaskList(this._tasks, this._starTime, this._endTime, this._onClick);

final List<Task> _tasks;
final List<Task> _starTime;
final List<Task> _endTime;
final _onClick;


@override
Widget build(BuildContext context) {
return ListView(
    children: _tasks.map((task)
    {
      return TaskItem(task,_starTime,_endTime,_onClick);
    }
    ).toList());

 }
}

【问题讨论】:

    标签: flutter flutter-listview


    【解决方案1】:

    ListView 只接受一个列表,所以要做到这一点,你需要像这样组合所有列表

      List<String> list1 = ['A', 'B'];
      List<String> list2 = ['C', 'D'];
      List<String> list3 = ['E', 'F'];
      var newList = [...list1, ...list2, ...list3];
      print(newList);
    

    输出:

    [A, B, C, D, E, F]
    

    现在在ListView 中使用newList 来渲染List

    代码:

    @override
    Widget build(BuildContext context) {
    var _newList = [..._tasks, ..._starTime, ..._endTime];
    return ListView(
        children: _newList.map((task)
        {
          return TaskItem(task,_starTime,_endTime,_onClick);
        }
        ).toList());
    
     }
    }
    

    【讨论】:

    • 如何合并我的列表?
    • lib/screens/taskdetail_notscreen.dart:21:42:错误:无法将参数类型“List”分配给参数类型“Task”。 - “列表”来自“飞镖:核心”。 - “任务”来自“package:bmi_calculator/screens/task_notscreen.dart”(“lib/screens/task_notscreen.dart”)。返回任务项(任务,_starTime,_endTime,_onClick); ^
    • 这是我的任务项:TaskItem(this._task,this._startime, this._endtime, this._onClick);最终任务_task;最终任务_starttime;最终任务_endtime;最终函数_onClick;
    • 问题在于 TaskItem(task,_starTime,_endTime,_onClick)
    猜你喜欢
    • 2021-09-08
    • 2021-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-31
    • 2016-11-09
    • 2023-03-07
    相关资源
    最近更新 更多