🦋

【Flutter2.0】RaisedButton→ElevatedButtonへの移行

2021/03/09に公開

Flutter2.0からRaisedButtonが非推奨に

あらやだ…って感じですね

colorpaddingなどを指定していた場合、単純に名前を変えるだけではエラーになります

ElevatedButtonは、ButtonStyleを使わないといけない

RaisedButtonは、colorpaddingを直下に指定できましたが

            RaisedButton(
                color: Colors.blue,
                padding: EdgeInsets.all(20.0),
                child: Text('ボタン'),
                onPressed: () async {}),

ElevatedButtonは、styleプロパティからButtonStyleで指定しないといけません

            ElevatedButton(
                // ButtonStyleで指定
                style: ButtonStyle(
                  backgroundColor: MaterialStateProperty.all(Colors.blue),
                  padding: MaterialStateProperty.all(EdgeInsets.all(20.0)),
                ),
                child: Text('ボタン'),
                onPressed: () async {}),

ちなみにMaterialStateProperty
「ホバーとかタップとかされたときにどうするか、を色々指定できるやつ」というざっくりとした認識です
今回の場合は.allで、どんな状態でも青色で、余白を持ったボタンになるように指定しています
https://api.flutter.dev/flutter/material/MaterialStateProperty-class.html

Discussion