我的AppBar中有一个DropdownButtonHideUnderline。我调整了容器的颜色,使其从AppBar中脱颖而出。我还想将其高度调整为小于AppBar(文本周围的小填充):
这是我的代码:
@override
Widget build(BuildContext context) {
if (widget.appState.isLoading)
return Center(
child: CircularProgressIndicator(),
);
else
return DefaultTabController(
length: 5,
child: Scaffold(
appBar: AppBar(
title: Text("Home"),
actions: <Widget>[
DropdownButtonHideUnderline(
child: Container(
color: Colors.white,
child: DropdownButton(
isDense: true,
value: widget.appState.user.accountNumbers[widget.appState.selectedAccountIndex],
items: widget.appState.user.accountNumbers.map<DropdownMenuItem>((accountNumber) {
return DropdownMenuItem(
child: Text(
accountNumber,
style: Theme.of(context).textTheme.caption,
),
value: accountNumber,
);
}).toList(),
onChanged: (selectedItem) => setState((){
widget.appState.selectedAccountIndex =
widget.appState.user.accountNumbers.indexOf(selectedItem);
}),
),
),
),
IconButton(
...
),
],
bottom: TabBar(
...
),
),
body: TabBarView(
...
),
),
);
}
答案 0 :(得分:0)
您可以使用Container将文本小部件包装在DropdownMenuItem中。
//inside DropdownMenuItem
Container(
padding: EdgeInsets.symmetric(vertical: 10.0,),
child: Text(),
)
答案 1 :(得分:0)
感谢提示@rmtmckenzie和@ yashthakkar1173。我需要做的是将DropdownButtonHideUnderline包装在带有填充的容器中:EdgeInsets.symmetric(vertical:17.0)。做到了。