繁体   English   中英

flutter dropdownbutton 初始值在屏幕上没有改变

[英]flutter dropdownbutton initial value doesn't change on screen

我有 dropdownbutton 和项目来动态列表,这非常有效。 我可以显示所有列表项,但是当我 select 某人时,我的值不会在屏幕上改变。 只是 entry.first write 不会更改为所选内容。 当我在终端上查看时,我可以看到所选项目,因此设置 state 方法有效,但初始值没有改变。

我的下拉按钮

 String dropdownvalue = entry.first;  
 var items =entry;
 DropdownButton(
           
          // Initial Value
       value: dropdownvalue,
           
          // Down Arrow Icon
          icon: const Icon(Icons.keyboard_arrow_down),   
           
          // Array list of items
          items: items.map((dynamic items) {
            return DropdownMenuItem(
              value: items,
              child: Text(items),
            );
          }).toList(),
          // After selecting the desired option,it will
          // change button value to selected value
          onChanged: (dynamic newvalue) {
            setState(() {
              dropdownvalue = newvalue; > **this not working**
            print(dropdownvalue); > **it gives the newvalue**
             });
          },
        ),

您的问题似乎与您声明下拉值和项目列表的方式有关。

请检查这个飞镖板。 在这里,我使用您的代码对项目列表和下拉值的声明进行了一些修改。

https://dartpad.dev/?id=33ef41ea7fa95613fe1a498e4dac4bcc

您必须使用 stateFul 小部件并将变量放在: dropdownvalue ,这意味着在

class _MyAppState extends State<MyApp> {
...
}

我遇到了同样的问题并像那样解决了它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM