Android 无法在颤振中实现DropdownButton

Android 无法在颤振中实现DropdownButton,android,flutter,Android,Flutter,我正在尝试实现一个简单的下拉按钮,用户可以用它选择货币 Container( height: 150.0, alignment: Alignment.center, padding: EdgeInsets.only(bottom: 30.0), color: Colors.lightBlue, child: DropdownButton<String>( items: [

我正在尝试实现一个简单的下拉按钮,用户可以用它选择货币

 Container(
        height: 150.0,
        alignment: Alignment.center,
        padding: EdgeInsets.only(bottom: 30.0),
        color: Colors.lightBlue,
        child: DropdownButton<String>(
          items: [
            DropdownMenuItem(child: Text('USD')),
            DropdownMenuItem(child: Text('EUR')),
            DropdownMenuItem(child: Text('GBP')),
          ],
          value: 'USD',
          onChanged: (value) {
            print(value);
          },
        ),
      ),
容器(
高度:150.0,
对齐:对齐.center,
填充:仅限边缘设置(底部:30.0),
颜色:颜色。浅蓝色,
孩子:下拉按钮(
项目:[
DropdownMenuItem(子项:文本('USD')),
DropdownMenuItem(子项:文本('EUR')),
DropdownMenuItem(子项:文本('GBP')),
],
价值:'美元',
一旦更改:(值){
印刷品(价值);
},
),
),
但我的错误率越来越低

Failed assertion: line 620 pos 15: 'items == null || items.isEmpty || value == null || items.where((DropdownMenuItem<T> item) => item.value == value).length == 1': is not true.
失败的断言:第620行第15位:“items==null | | | items.isEmpty | | value==null | | items.where((DropdownMenuItem项)=>item.value==value)。长度==1”:不为真。

如何克服这个错误?提前感谢

根据文档

您的DropdownButton项目需要一个包含子项和值的DropdownMenuItem

所以使用DropdownMenuItem作为

items: [
            DropdownMenuItem(child: Text('USD'), value: 'USD'),
            DropdownMenuItem(child: Text('EUR'), value: 'EUR'),
            DropdownMenuItem(child: Text('GBP'), value: 'GBP'),
          ],
对于动态下拉列表,请将其用作

  var dropdownvalue = 'USD';

 items: <String>['USD', 'EUR', 'GPB']
              .map<DropdownMenuItem<String>>((String value) {
            return DropdownMenuItem<String>(
              value: value,
              child: Text(value),
            );
          }).toList(),
          value: dropdownvalue,
          onChanged: (value) {
            setState(() {
              dropdownvalue = value;
            });
          },
var-dropdownvalue='USD';
项目:[‘美元’、‘欧元’、‘GPB’]
.map((字符串值){
返回下拉菜单项(
价值:价值,
子项:文本(值),
);
}).toList(),
value:dropdownvalue,
一旦更改:(值){
设置状态(){
dropdownvalue=值;
});
},
希望它能解决