【发布时间】:2021-04-26 03:22:06
【问题描述】:
我正在创建一个 PopUpMenuButton 让用户选择应用程序的语言,并且我想显示当前所选语言的文本作为打开菜单的按钮。
所以是这样的:
我目前只有一个图标作为打开带有工具提示的菜单的按钮:
BlocBuilder<LanguageBloc, LanguageState>(builder: (context, state) {
return PopupMenuButton(
offset: const Offset(0, 40),
elevation: 2,
iconSize: 18,
icon: Icon(
Icons.g_translate,
color: Theme.of(context).primaryColor,
),
itemBuilder: (BuildContext context) => [
PopupMenuItem(
value: "en",
child: Row(children: [
Text("English",
style: Theme.of(context).textTheme.bodyText2),
const SizedBox(width: 15),
Icon(
Icons.check_circle,
size: 18,
color: Colors.black.withOpacity(0.60),
)
])),
PopupMenuItem(
value: "de",
child: Text("Deutsch",
style: Theme.of(context).textTheme.bodyText2)),
],
);
})
我可以在图标前面放一个文本,但点击文本不会打开Popupenu,所以我需要一个允许在点击文本或图标时打开菜单的实现。
【问题讨论】: