我有一个弹出窗口(SimpleDialog),显示一些文本选择。 我正在尝试使用所选文本更新屏幕上的文本。 选择其中一种文本时,窗口关闭,但是所选文本不会在屏幕上更新。我正在使用BLOC模式。
我还有一个基于AlertDialog的对话框,显示一个文本字段。按下OK后,相同的文本将在屏幕上正确更新,并且对话框关闭。
以下是显示SimpleDialog的代码:
_selectGoal(BuildContext context) async {
final choice = await showDialog<String>(
context: context,
builder: (_) {
return SimpleDialog(
title: const Text('Select a Goal'),
children: BehavioralDesignGoalOptions.goals
.map((o) =>
SimpleDialogOption(
onPressed: () {
Navigator.pop(context, o);
},
child: Text(o),
))
.toList());
});
if (choice != null) {
print("choice: " + choice);
BlocProvider.of<BehavioralDesignBloc>(context).dispatch(
BehavioralDesignSetGoalEvent(choice));
}
}
我想念什么吗?