簡體   English   中英

在多個下拉菜單中,如果已在 Flutter 中選擇,如何禁用選項?

[英]In multiple dropdown menu, how to disable an option if already selected in Flutter?

我有 4 個不同的下拉字段和 5 個選項,如果已選擇該選項,我想從其他字段中禁用/刪除該選項。

截圖:截圖 1截圖 2

下拉菜單代碼:

 String opemo1, opemo2, opemo3, opemo4; List<String> emoji = [ "❤️", "", "✌️", "", "", ];
 DropdownButtonFormField( validator: (value) => value == null? 'required': null, hint: Text('❤️'), value: opemo1, icon: Icon(Icons.arrow_drop_down), iconSize: 36, isExpanded: true, style: TextType.regularDarkText, onChanged: (newValue) { setState(() { opemo1 = newValue; pollDataController.setop1Emoji(newValue); }); }, items: emoji.map((opemo1) { return DropdownMenuItem( value: opemo1, child: Text(opemo1), ); }).toList(), ),

要管理它,您需要從List<String> emoji中刪除選定的表情符號。

onChanged: (newValue) {
    setState(() {
        emoji.removeWhere((element) => element == newValue); /// This removed selected emoji.
        opemo1 = newValue;
        pollDataController.setop1Emoji(newValue);
    });
},

您可以使用此代碼段替換您的onChanged

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM