簡體   English   中英

顫振列:mainAxisAlignment.start 不起作用

[英]Flutter Column: mainAxisAlignment.start not working

我有以下情況:

Column(
  mainAxisSize: MainAxisSize.max,
  children: <Widget>[
    Container(
      color: Colors.greenAccent,
      child: Column(
        mainAxisAlignment: MainAxisAlignment.start,
        children: <Widget>[
          Text("Title"),
          TextField(),
        ],
      ),
    ),
  ],
),

我希望元素(尤其是Text )向右對齊,但事實並非如此:
結果用戶界面

有人可以給我一個關於如何將元素向右對齊的提示嗎?

使用 crossAxisAlignment: CrossAxisAlignment.start 而不是 mainAxisAlignment: MainAxisAlignment.start

Column 的主軸是垂直的。 Column 的橫軸是水平的。

CrossAxisAlignment.start

將孩子們的開始邊緣與交叉軸的開始側對齊。

主軸對齊.start

將孩子盡可能靠近主軸的起點。

添加 crossAxisAlignemnt 屬性以在水平位置對齊列的子項。 CrossAxisAlignment.start -> 左對齊 CrossAxisAlignment.center -> 居中 CrossAxisAlignment.end -> 右對齊

Column(
  mainAxisSize: MainAxisSize.max,
  children: <Widget>[
    Container(
      color: Colors.greenAccent,
      child: Column(
        crossAxisAlignment:CrossAxisAlignment.end,
        mainAxisAlignment: MainAxisAlignment.start,
        children: <Widget>[
          Text("Title"),
          TextField(),
        ],
      ),
    ),

在列中,主軸基本上是 y 軸,在列中,主軸基本上是 x 軸,在您的情況下,您必須設置橫軸而不是主軸以對齊它以開始嘗試此代碼

Column( children: [ Container( child: Column( crossAxisAlignment:CrossAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.start, children: [ Text("Cross Axis"), ], ), ),

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM