web-dev-qa-db-ja.com

列のボタンをフラッターで同じ幅にする

Buttonsに複数のRowを作成して同じWidthを作成したい場合、どうすればよいですか?たとえば、タイトルが異なる3つのRaisedButtonsApproveReject、_Need Reviseそして3つのButtonRowに入れると、それらは異なるWidthを持つことになり、私はそれを望みません。私が必要なのは、彼らが同じWidthを持っているからです。

9
esthrim

Rowを使用して、子供をExpandedでラップできます。

        Row(children: <Widget>[
                    Expanded(
                      child: RaisedButton(
                        child: Text("Approve"),
                        onPressed: () => null,
                      ),
                    ),
                    Expanded(
                      child: RaisedButton(
                        child: Text("Reject"),
                        onPressed: () => null,
                      ),
                    ),
                    Expanded(
                      child: RaisedButton(
                        child: Text("Need Revise"),
                        onPressed: () => null,
                      ),
                    )
                  ])
33
diegoveloper

2つの方法があります。

  1. 拡張されたウィジェットは、スペースを均等に分割します。列の行にすべての拡張ウィジェットを使用する場合。
  2. 画面の幅を取得し、必要なサイズに均等に分割します。

ダブル幅= MediaQuery.of(context).size.width;

0