Flutter - PopupMenuItem - 如何获取值
Flutter - PopupMenuItem - how get value
我有一个列表,当您单击 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,
);
用户选择 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),
]);
你可以在下面看到,当我们打印 selected
时,我们得到 PopupMenuItem
的 value
编辑:
如果你在Flutter的网页上查看documentation的showMenu
函数,你会看到它是returns一个Future
,所以我在前面使用了await
showMenu
函数。
我有一个列表,当您单击 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,
);
用户选择 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),
]);
你可以在下面看到,当我们打印 selected
时,我们得到 PopupMenuItem
value
编辑:
如果你在Flutter的网页上查看documentation的showMenu
函数,你会看到它是returns一个Future
,所以我在前面使用了await
showMenu
函数。