flutter - 如何在颤动中禁用下拉菜单
问题描述
如何完全禁用下拉列表,以便用户无法进入下拉列表并将颜色更改为灰色
DropdownButtonFormField<String>(
value: selected,
items: ["Value1", "Value2", "Value3"]
.map(
(label) => DropdownMenuItem(
child: Text(label),
value: label,
),
)
.toList(),
onChanged: (value) {
setState(() => selected = value);
},
)
我厌倦了将 onChange 设置为 null 但整个下拉列表消失了
解决方案
唯一的方法是设置onChange
为null并设置disabledHint
DropdownButtonFormField<String>(
style: TextStyle(color: Colors.grey),
value: selected,
disabledHint: Text(selected), //<-set this one
items: ["Value1", "Value2", "Value3"]
.map(
(label) => DropdownMenuItem(
child: Text(label),
value: label,
),
)
.toList(),
onChanged: null,
// (value) {
// setState(() => selected = value);
// },
)
推荐阅读
- php - Laravel 启用将导出项目 Zip 文件下载到浏览器
- android - 带有分页库的存储库模式
- docker - 如何克服官方教程中 docker push 拒绝访问资源的问题
- c# - c# equivalent of c++ vector
- asp.net - error at int records = (int)cmd.ExecuteScalar(); illegal variable name/ number
- vue.js - Handling CSRF token when working with Django Rest Framework JWT
- google-cloud-platform - Azure:每 6 小时尽快加入两个 500 万张表
- java - 课堂实施最佳实践?
- vue.js - [Vue warn]: Invalid Component definition
- android - 与 android 和 Vuforia 统一