Флаттер: Как выровнять значок меню DropdownButton в крайнем правом углу? - PullRequest
0 голосов
/ 22 января 2020

Мне нужно выровнять dropdown моего flutter приложения по правому краю. Он уже выровнен, но в моем реальном приложении у меня есть несколько dropdowns один под другим. Длина пункта меню не будет одинаковой во всех выпадающих меню. Поэтому мне нужно, чтобы все они были выровнены по правому краю.

Ниже мой код.

Row(
  children: <Widget>[
    Expanded(
      flex: 1,
      child: Container(
        margin: EdgeInsets.only(left: 10),
        child: Text(
          "Size: ",
          style: Theme.of(context).textTheme.subhead,
        ),
      ),
    ),
    Expanded(
      flex: 3,
      child: DropdownButton(
        hint: Text(
          "Please Select          ",
          style: TextStyle(
            fontSize: 14,
          ),
        ),
        items: <String>[
          'Skinless Boneless, Full Loins',
          'brown',
          'silver'
        ].map((data) {
          return DropdownMenuItem(
            child: new Text(data,
                style: TextStyle(
                  fontSize: 14,
                )),
            value: data,
          );
        }).toList(),
        onChanged: (String newValue) {
          setState(() {
            _sizedropDown = newValue;
            print(newValue);
          });
        },
        value: _sizedropDown,
      ),
    )
  ],
)

Как я могу это сделать?

1 Ответ

4 голосов
/ 22 января 2020

Набор isExpanded: true в DropdownButton,

Row(
  children: <Widget>[
    Expanded(
      flex: 1,
      child: Container(
        margin: EdgeInsets.only(left: 10),
        child: Text(
          "Size: ",
          style: Theme.of(context).textTheme.subhead,
        ),
      ),
    ),
    Expanded(
      flex: 3,
      child: DropdownButton<String>(
        isExpanded: true,
        hint: Text(
          "Please Select          ",
          style: TextStyle(
            fontSize: 14,
          ),
        ),
        items: <String>[
          'Skinless Boneless, Full Loins',
          'brown',
          'silver'
        ].map((data) {
          return DropdownMenuItem(
            child: new Text(data,
                style: TextStyle(
                  fontSize: 14,
                )),
            value: data,
          );
        }).toList(),
        onChanged: (String newValue) {
          setState(() {
            _sizedropDown = newValue;
            print(newValue);
          });
        },
        value: _sizedropDown,
      ),
    )
  ],
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...