Выровняйте постоянную нижнюю кнопку лесов с правой стороны - PullRequest
0 голосов
/ 16 марта 2020

Я хочу отобразить список и под ним постоянный нижний колонтитул, столбец с несколькими строками. Я использую persistentFooterButtons из Scaffold.

Самое близкое к тому, что я получаю, это:

enter image description here

Но я не могу выровнять поля вправо . Когда я работаю с Align или Spacer, виджеты исчезают.

Содержимое persistentFooterButtons.

FittedBox(
  child: Column(
    children: <Widget>[
      FlatButton(
        onPressed: () {
          Navigator.pushNamed(context, RouteName.BAUSTELLEN);
        },
        child: Align(
          alignment: Alignment.bottomLeft,
          child: Text('Bestellen'),
        ),
      ),
      Row(
        children: <Widget>[
          Text('$priceInfo '),
          MyFutureBuilder(
            future: sum,
            builder: (context, double sum) {
              var mySum = formatDoubleNumber(sum);
              return Text('$mySum');
            },
          ),
          Container(
            width: ImpexStyle.horizontalPadding,
          ),
        ],
      ),
      Row(
        children: <Widget>[
          Text('Ihr Einkaufsrahmen '),
          Text(
            '$einkaufsrahmen',
            style: TextStyle(
                color: einkaufsrahmen == 0 ? Colors.red : Colors.black),
          ),
          Container(
            width: ImpexStyle.horizontalPadding,
          ),
        ],
      ),
    ],
  ),
);

Если я помещу элементы непосредственно в persitentFooterButtons, это то, что я получаю, текст разбросан вокруг, и мой список не отображается.

enter image description here

и код

Scaffold(
  body: WarenkorbListe(),
  persistentFooterButtons: <Widget>[
    // WarenkorbFooter(),
              FlatButton(
        onPressed: () {
          Navigator.pushNamed(context, RouteName.BAUSTELLEN);
        },
        child: Align(
          alignment: Alignment.bottomLeft,
          child: Text('Bestellen'),
        ),
      ),
      Row(
        children: <Widget>[
          Text('$priceInfo '),
          Container(
            width: ImpexStyle.horizontalPadding,
          ),
        ],
      ),
      Row(
        children: <Widget>[
          Text('Ihr Einkaufsrahmen '),
          Text(
            '$einkaufsrahmen',
            style: TextStyle(
                color: einkaufsrahmen == 0 ? Colors.red : Colors.black),
          ),
          Container(
            width: ImpexStyle.horizontalPadding,
          ),
        ],
      ),

  ],
);

1 Ответ

1 голос
/ 16 марта 2020

Попробуйте выровнять по столбцу вместо

FittedBox(
  child: Column(
    crossAxisAlignment: CrossAxisAlignment.end, // this
    children: <Widget>[
...