1

在 AppBar 居中之后,我想要一切。然而它不是居中的。这就是我的代码的样子。如果有人能告诉我为什么我当前的代码没有将登录名放在密码项的中心,我将不胜感激。

这就是我当前的布局

在此处输入图像描述

这是我的代码

class MyScaffold extends StatelessWidget {
    @override
    Widget build(BuildContext context) {
        // Material is a conceptual piece of paper on which the UI appears.
        return new Material(
            // Column is a vertical, linear layout.

            child: new Column(
                    children: <Widget>
                    [
                        new MyAppBar(
                            title: new Text('Example title', style: Theme
                                    .of(context)
                                    .primaryTextTheme
                                    .title),
                            ),

                        new Center(
                            child: new Column(
                                    mainAxisAlignment: MainAxisAlignment.center,
                                    crossAxisAlignment: CrossAxisAlignment.center,
                                    children: <Widget>[
                                        new Text("Login"),

                                        new TextField(
                                                decoration: new InputDecoration(
                                                        border: new OutlineInputBorder(), hintText: '---')),

                                        new Text("Password"),

                                        new TextField(
                                                decoration: new InputDecoration(
                                                        border: new OutlineInputBorder(), hintText: '---')),

                                    ]),
                            )


                    ]
                    ));
    }
}

我希望它看起来像这样

在此处输入图像描述

我知道我可以通过扩展来实现替代中心的外观。为什么这行得通?两者有什么区别。谁能澄清 Expanded 的真正作用?

4

1 回答 1

0

使用扩展会迫使孩子占用可用空间。在这里阅读更多

于 2018-04-29T12:41:41.047 回答