Cap*_*ity 2 widget popupmenu dart flutter
我有一个列表,当您单击 中的按钮时会出现该列表BottomNavigationBarItem。这是showMenu带有下面代码的列表。
但是我怎样才能得到这个列表中选择的值呢?
showMenu<int>(
context: context,
position: RelativeRect.fromLTRB(1000.0, 600.0, 0.0, 0.0),
items: <PopupMenuItem<int>>[
new PopupMenuItem<int>(child: const Text('Top 1'), value: 1),
new PopupMenuItem<int>(child: const Text('Top 2'), value: 2),
new PopupMenuItem<int>(child: const Text('Top 3'), value: 3),
new PopupMenuItem<int>(child: const Text('Top 4'), value: 4),
],
elevation: 8.0,
);
Run Code Online (Sandbox Code Playgroud)
用户选择 a 后PopupMenuItem,该值将由showMenu函数返回。
因此,您可以通过分配给变量来获取值:
var selected = await showMenu(
context: context,
position: RelativeRect.fromLTRB(1000.0, 600.0, 0.0, 0.0),
items: <PopupMenuItem<int>>[
new PopupMenuItem<int>(child: const Text('Top 1'), value: 1),
new PopupMenuItem<int>(child: const Text('Top 2'), value: 2),
new PopupMenuItem<int>(child: const Text('Top 3'), value: 3),
new PopupMenuItem<int>(child: const Text('Top 4'), value: 4),
]);
Run Code Online (Sandbox Code Playgroud)
你可以在下面看到,当我们打印时selected,我们得到了value那个PopupMenuItem
编辑:如果您在 Flutter 的网页上查看该函数的文档showMenu,您会看到它返回一个Future,这就是我await在showMenu函数前面使用的原因。