Flutter 如何在OnChanged内重置DropdownButtonField的值

Flutter 如何在OnChanged内重置DropdownButtonField的值,flutter,mobx,dropdownbutton,Flutter,Mobx,Dropdownbutton,我有一个DropdownButtonFormField,其中最后一项是DropdownMenuItem,用于使用对话框添加新对象 填充( 填充:仅限常量边集(底部:15), 儿童:观察员( 建筑商:(){ 返回DropdownButtonFormField( 值:createdContentStore.subjectTitleSelected, 是的, 装饰:输入装饰( 内容填充:边集。对称(水平:10,垂直:10), 是的, 边框:OutlineInputBorder() ), onChang

我有一个DropdownButtonFormField,其中最后一项是DropdownMenuItem,用于使用对话框添加新对象

填充(
填充:仅限常量边集(底部:15),
儿童:观察员(
建筑商:(){
返回DropdownButtonFormField(
值:createdContentStore.subjectTitleSelected,
是的,
装饰:输入装饰(
内容填充:边集。对称(水平:10,垂直:10),
是的,
边框:OutlineInputBorder()
),
onChanged:(值)异步{
//印刷品(价值);
如果(值=='newSubject'){
Subject newSubject=等待显示对话框(
上下文:上下文,
生成器:()=>CreatedSubjectDialogBox(isNewContent:true,)
);
if(newSubject!=null){
createdContentStore.setSubjectTitleSelected(newSubject.title);
createdContentStore.setSubject(newSubject);
}否则{
//我可以在这里做什么来重置DROP的值?
}
}否则{
createdContentStore.setSubjectTitleSelected(值);
}
},
iconSize:30,
提示:文本(“Selecione uma matéria”),
项目:subjectStore.subjectList.map((主题)=>DropdownMenuItem(
值:subject.title,
子项:文本(主题、标题),
onTap:(){
createdContentStore.setSubject(主题);
},
)).toList()…添加(DropdownMenuItem(
值:“newSubject”,
儿童:中心(
子:文本(
“Nova Matéria”。toUpperCase(),
样式:文本样式(颜色:红色修订),
),
),
)),
);
},
),
);
显示该对话框时,用户可以创建一个新对象,该对象将显示在下拉列表中。当用户取消对话框时,它将显示最后一项。所需的行为是显示提示

有人能帮我吗?
谢谢大家!

只需从下拉列表中删除该值

 DropdownButtonFormField(
//** REMOVE THE VALUE **
        isDense: true,
        decoration: InputDecoration(
            contentPadding: EdgeInsets.symmetric(horizontal: 10, vertical: 10),
            isDense: true,
            border: OutlineInputBorder()
        ),
        onChanged: (value) async {
          if(value == 'newSubject'){
            Subject newSubject = await showDialog(
                context: context,
                builder: (_) => CreatedSubjectDialogBox(isNewContent: true,)
            );
            if(newSubject != null){
              createdContentStore.setSubjectTitleSelected(newSubject.title);
              createdContentStore.setSubject(newSubject);
            } else {
              // WHAT CAN I DO HERE TO RESET DROP'S VALUE?
            }
          } else {
              createdContentStore.setSubjectTitleSelected(value);
          }
        },
        iconSize: 30,
        hint: Text('Selecione uma matéria'),
        items: subjectStore.subjectList.map((subject) => DropdownMenuItem(
          value: subject.title,
          child: Text(subject.title),
          onTap: () {
            createdContentStore.setSubject(subject);
          },
        )).toList()..add(DropdownMenuItem(
          value: 'newSubject',
          child: Center(
            child: Text(
              'Nova Matéria'.toUpperCase(),
              style: TextStyle(color: redRevise),
            ),
          ),
        )),
      );
    },
  ),
);