我正在尝试构建通用主页,我想将列的最后一个子项(包含该页面的所有小部件)对齐到屏幕底部,但是Align中包装的小部件没有移动。以下是对我最有意义的内容:
Column( mainAxisSize: MainAxisSize.max, children: <Widget>[ ChildA(), ChildB(), Align( alignment: Alignment.bottomCenter, child: BottomAlignedChild() ) ] )
What am I doing wrong?
您可以使用Expanded使最后一个小部件扩展到整个剩余空间。
import 'package:flutter/material.dart'; void main() => runApp(MyApp()); class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( title: 'My Layout', theme: ThemeData( primarySwatch: Colors.blue, ), home: MyHomePage(), ); } } class MyHomePage extends StatelessWidget { @override Widget build(BuildContext context) { return new Scaffold( appBar: new AppBar( title: new Text("Align Bottom Demo"), ), body: new Column(children: <Widget>[ new Text("Text 1"), new Text("Text 2"), new Expanded( child: new Align( alignment: Alignment.bottomCenter, child: new Row( mainAxisAlignment: MainAxisAlignment.center, children: <Widget>[ new Icon(Icons.star), new Text("Bottom Text") ], ))) ]), ); } }