我是Flutter的新手,任何人都可以分享你使用getx显示下拉列表的想法,我尝试过使用列表生成器列出。但不知道使用GetX(MVC、提供者、存储库(进行下拉。
首先在控制器中声明一个变量
var selectedRole='CONTENT_CREATOR'.obs;
然后声明这个方法
void onSelected(String value) {
selectedRole.value = value;
registrationParam.value.roleType = selectedRole.value;
}
最后从您的UI代码调用,如
Padding(
padding: const EdgeInsets.only(right: 8, left: 16),
child: Obx(
() => DropdownButton(
underline: SizedBox(),
isExpanded: true,
hint: Text('Select a role'),
value: _regController.selectedRole.value,
items: [
DropdownMenuItem(
value: "CONTENT_CREATOR",
child: Text("Content Creator")),
DropdownMenuItem(
value: "PR", child: Text("PR Agency")),
DropdownMenuItem(
value: "JOURNALIST",
child: Text("Journalist"))
],
onChanged: (val) {
_regController.onSelected(val);
},
),
)),
**您的初始值必须来自DropdownMenuItem 的值