dart - 如何自定义下拉按钮
问题描述
我正在尝试创建一个带有图标的下拉按钮..我希望整个下拉列表都带有下划线,并且我想从我的资产而不是图标中设置图标..另外我想管理它的高度..
如何实现这一切?
现在正在做的是:
Column(
crossAxisAlignment: CrossAxisAlignment.stretch,
children: <Widget>[
new InputDecorator(
decoration: const InputDecoration(
icon: const Icon(
Icons.flag,
color: Color(0xFF49C275),
),
),
child: DropdownButtonHideUnderline(
child: new DropdownButton<Gender>(
hint: new Text("المدينة"),
value: selectedGender,
onChanged: (Gender newValue) {
setState(() {
selectedGender = newValue;
});
},
items: genders.map((Gender gender) {
return new DropdownMenuItem<Gender>(
value: gender,
child: new Text(
gender.gender,
style:
new TextStyle(color: Color(0xFF707070)),
),
);
}).toList(),
),
),
),
],
),
并得到这个结果:
当我希望它看起来像这样时:
这个怎么做?
解决方案
Column(
crossAxisAlignment: CrossAxisAlignment.stretch,
children: <Widget>[
new InputDecorator(
decoration: const InputDecoration(
// use prefixIcon instead of icon
prefixIcon: const Icon(
Icons.flag,
color: Color(0xFF49C275),
),
),
child: DropdownButtonHideUnderline(
child: new DropdownButton<Gender>(
hint: new Text("المدينة"),
value: selectedGender,
onChanged: (Gender newValue) {
setState(() {
selectedGender = newValue;
});
},
items: genders.map((Gender gender) {
return new DropdownMenuItem<Gender>(
value: gender,
child: new Text(
gender.gender,
style:
new TextStyle(color: Color(0xFF707070)),
),
);
}).toList(),
),
),
),
],
),
推荐阅读
- c# - Xamarin iOS:启动计时器使应用程序崩溃,无一例外
- go - 修复 go 使用的工具的版本
- java - android分享带有指示谷歌地图的可点击字符串url
- reporting-services - SSRS ORA-01008 未绑定所有变量
- android - Android IMA SDK“了解更多”自定义点击监听
- javascript - 搜索大量对象
- asp.net - 在我填写所有字段之前,按钮取消不起作用(asp.net)
- excel - Excel,在运行宏时使用 Visual Basic
- android - 扩展 Appcompatactivity 后缺少 Android ActionBar
- amazon-ec2 - 在 EC2 上运行的 kafka 需要公共 IP 地址