DropdownButtonHideUnderline пользовательская высота - PullRequest
0 голосов
/ 26 октября 2018

У меня есть DropdownButtonHideUnderline в моей панели приложений.Я отрегулировал цвет его контейнера, чтобы он выделялся на панели приложений.Я также хотел бы отрегулировать его высоту, чтобы она была меньше, чем в панели инструментов (небольшая вставка вокруг текста):

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 голосов
/ 27 октября 2018

Спасибо за подсказки @rmtmckenzie и @ yashthakkar1173.Что мне нужно было сделать, это обернуть DropdownButtonHideUnderline в контейнер с отступом: EdgeInsets.symmetric (вертикаль: 17.0).Это добилось цели.

0 голосов
/ 26 октября 2018

Вы можете обернуть свой текстовый виджет внутри DropdownMenuItem с контейнером.

//inside DropdownMenuItem
Container(
  padding: EdgeInsets.symmetric(vertical: 10.0,),
  child: Text(),
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...