【问题标题】:DropdownButtonHideUnderline custom heightDropdownButtonHideUnderline 自定义高度
【发布时间】:2018-10-25 21:21:10
【问题描述】:

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

【问题讨论】:

  • 将其包装在 Padding 小部件中以获取填充。但目前尚不完全清楚你的问题是什么......

标签: flutter flutter-layout


【解决方案1】:

您可以使用 Container 将文本小部件包装在 DropdownMenuItem 中。

//inside DropdownMenuItem
Container(
  padding: EdgeInsets.symmetric(vertical: 10.0,),
  child: Text(),
)

【讨论】:

    【解决方案2】:

    感谢@rmtmckenzie 和@yashthakkar1173 的提示。我需要做的是将 DropdownButtonHideUnderline 包装在一个带有填充的容器中:EdgeInsets.symmetric(vertical: 17.0)。成功了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-10-16
      • 1970-01-01
      • 2018-09-04
      • 1970-01-01
      • 2015-10-13
      • 2015-07-01
      • 2010-10-04
      相关资源
      最近更新 更多