[Flutter]Containerの「child」でif文を使うには?

Flutter

どうも、ちょげ(@chogetarou)です。

Containerの引数「child」でif文を使う方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

Containerの引数「child」でif文を使うには、「Widget _buildChild(){}」のような関数を用意します。

次に、関数内でif文を使った処理を記述し、最終的にWidgetを「return」します。

Widget _buildChild() {
  if (/*条件*/) {
    /*処理*/
    return Widget();
  }
  
  return Widget2();
}

最後に、用意した関数をContainerの「child」に指定します。

Container(
  child: _buildChild(),
),

以下は、使用例です。

  var _age = 20;

  Widget _buildChild() {
    if (_age >= 15) {
      return Text('15歳以上です');
    }

    return Text('15歳未満です');
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: Container(
          width: 200,
          height: 200,
          child: _buildChild(),
        ),
      ),
    );
  }

まとめ

Containerのchildでif文を使うには、Widgetを返す関数を使います。

コメント

タイトルとURLをコピーしました