Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 将变量从dropdownmenu传递到另一个类会得到错误的值_Flutter - Fatal编程技术网

Flutter 将变量从dropdownmenu传递到另一个类会得到错误的值

Flutter 将变量从dropdownmenu传递到另一个类会得到错误的值,flutter,Flutter,我似乎无法将正确的变量值从下拉菜单传递到另一个类 我已经创建了一个下拉菜单,其值为“Worker 1”、“Worker 2”和“Worker 3”,我知道这个下拉菜单可以工作,因为我能够打印正确的值 Here is when i create the dropdownbutton List<String> _dropdownValues = [ ]; for (var worker in workers) { _dropdownValue

我似乎无法将正确的变量值从下拉菜单传递到另一个类

我已经创建了一个下拉菜单,其值为“Worker 1”、“Worker 2”和“Worker 3”,我知道这个下拉菜单可以工作,因为我能够打印正确的值

Here is when i create the dropdownbutton

    List<String> _dropdownValues = [

    ];
    for (var worker in workers) {
         _dropdownValues.add(worker.name);

      }
      String _selectedValue ="";
    return DefaultTabController(
      length: 3,
      child: Scaffold(
        appBar: AppBar(
          actions: <Widget>[
            DropdownButton<String>(
                    items: _dropdownValues.map((data)=>DropdownMenuItem<String>(
                      child: Text(data),
                      value: data,
                    )).toList(),
                    onChanged: (String value){
                      setState(() { 
                       _selectedValue = value; 

                      });
                    },
                    hint: Text('Assign checklist \n to worker'),
                  ),


Here i pass values to the second class Tasktile()

    body: TabBarView(
          children: <Widget>[
            Column(
              children: <Widget>[
                for (Task task in remainingTasks)
                  TaskTile(
                    title: task.title,
                    subtitle: task.subtitle,
                    checked: task.checked,
                    checklistId: widget.checklistId,
                    taskId: task.id,
                    tasks: task,
                    hidden: task.hidden,
                    selectedvalue: _selectedValue,

                  )
              ],
            ),
但当我尝试在文本小部件中写入变量时,如下所示:

Text('${widget.selectedvalue}')

并尝试打印/使用它。它使用了_selectedvalue=“”的第一次初始化,因此我假设TaskTile类无法从set state()获取_selectedvalue=value{}

确保在
build
函数之外初始化状态变量(
_selectedvalue
)。确保初始化状态变量(
\u selectedValue
)在
生成
功能之外。
Text('${widget.selectedvalue}')