列の下部にあるウィジェットを中央下に配置しようとしていますが、左に揃え続けています。
return new Column(
new Stack(
new Positioned(
bottom: 0.0,
new Center(
new Container(),
),
),
),
);
Positionedが存在すると、コンテナは中央に配置されるのではなく、左に移動します。ただし、Positionedを削除すると、コンテナは中央中央に配置されます。
Align は、子が1人だけいる方法です。
さらにある場合は、次のようなことを検討してください。
return new Column(
crossAxisAlignment: CrossAxisAlignment.center,
mainAxisSize: MainAxisSize.max,
mainAxisAlignment: MainAxisAlignment.end,
children: <Widget>[
//your elements here
],
);
1)FractionalOffset.bottomCenter
で Align ウィジェットを使用できます。
2)Positioned
でleft: 0.0
およびright: 0.0
を設定することもできます。
このアプローチを使用しましたが、
私が欲しいのは、A layout
は常に下にありますが、キーボードがポップアップするたびにlayout
もその上に来るということです。
body: Container(
color: Colors.amber,
height: double.maxFinite,
child: new Stack(
//alignment:new Alignment(x, y)
children: <Widget>[
new Positioned(
child: myWidget(context, data.iconName, Colors.red),
),
new Positioned(
child: new Align(
alignment: FractionalOffset.bottomCenter,
child: myWidget(context, data.iconName, Colors.green)
),
)
],
),
),
コンテナをSingleChildScrollView()ウィジェットでラップします。そうすると、キーボードがポップアップしても上に来ません。