Родитель ширины кнопки соответствует: флаттер - PullRequest
0 голосов
/ 25 апреля 2018

Я новичок в Флаттер , поэтому я хочу знать, как я могу установить ширину соответствовать родителю ширина макета

 new Container(
              width: 200.0,
              padding: const EdgeInsets.only(top: 16.0),
              child: new RaisedButton(
                child: new Text(
                    "Submit",
                    style: new TextStyle(
                      color: Colors.white,
                    )
                ),
                colorBrightness: Brightness.dark,
                onPressed: () {
                  _loginAttempt(context);
                },
                color: Colors.blue,
              ),
            ),

Я знаю немногобит на расширенном теге , но расширенное расширенное представление в обоих направлениях, я не знаю, как это сделать.Помогите мне, если знаете, заранее спасибо.

Ответы [ 14 ]

0 голосов
/ 28 мая 2018

использование ListTile также работает, так как список заполняет всю ширину:

new ListTile(
              title: new RaisedButton(...),
),
0 голосов
/ 22 мая 2018
    new Container {
         width: double.infinity,
         child: new RaisedButton(...),
    }
0 голосов
/ 25 апреля 2018

Правильным решением было бы использование виджета SizedBox.expand, который принудительно заставляет его child соответствовать размеру его родителя.

new SizedBox.expand(
  child: new RaisedButton(...),
)

Есть много альтернатив, которые позволяют более или менее настраивать:

new SizedBox(
  width: double.infinity,
  // height: double.infinity,
  child: new RaisedButton(...),
)

или используя ConstrainedBox

new ConstrainedBox(
    constraints: const BoxConstraints(minWidth: double.infinity),
    child: new RaisedButton(...),
)
0 голосов
/ 25 апреля 2018

После некоторых исследований я нашел какое-то решение, и благодаря @ Günter Zöchbauer,

Я использовал столбец вместо контейнера и

установить свойство в столбец CrossAxisAlignment.stretch , чтобы заполнить совпадение родительского элемента Button

    new Column(
              crossAxisAlignment: CrossAxisAlignment.stretch,
              children: <Widget>[
                new RaisedButton(
                  child: new Text(
                      "Submit",
                      style: new TextStyle(
                        color: Colors.white,
                      )
                  ),
                  colorBrightness: Brightness.dark,
                  onPressed: () {
                    _loginAttempt(context);
                  },
                  color: Colors.blue,
                ),
              ],
            ),
...