DropdownButtonHideUnderline自定义高度

时间:2018-10-25 21:21:11

标签: flutter flutter-layout

我的AppBar中有一个DropdownButtonHideUnderline。我调整了容器的颜色,使其从AppBar中脱颖而出。我还想将其高度调整为小于AppBar(文本周围的小填充):

enter image description here

这是我的代码:

@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(
                  ...
                ),
        ),
      );
  }

2 个答案:

答案 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)。做到了。