2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【Flutter】AppBarのleadingプロパティの幅を変更する

Last updated at Posted at 2022-05-03

はじめに

FlutterのAppBarに画像を使ってロゴを設定したかったのですが画像が思ったサイズにならなかったので、原因と解決策をまとめます

原因

公式ドキュメントを参照すると

The leading widget's width and height are constrained to be no bigger than leadingWidth and toolbarHeight respectively.

leadingプロパティに設定するWidgetはleadingWidthとtoolbarHeightより大きくならないように制限されている

上記のように書かれていたため、デフォルトのleadingWidthtoolbarHeightを大きくすることがキーポイントになるようです

解決する前

この状態ではデフォルトのleadingWidthが56.0であるため
画像の幅を56.0以上大きくしても反映されません

logo.dart
return Scaffold(
      appBar: AppBar(
          leading: IconButton(
            icon: Image.asset(
              'images/logo.png',
              width: 100,
        ),
        onPressed: () {
          Navigator.pushNamed(context, 'initial_page');
        },
      )),
    );

解決した後

私の場合はロゴが横長でしたので、leadingWidthプロパティを400(ロゴの幅より大きい数字)に設定するだけでOKでした

logo.dart
return Scaffold(
      appBar: AppBar(
          leadingWidth: 400,
          leading: IconButton(
            icon: Image.asset(
              'images/logo.png',
              width: 100,
            ),
            onPressed: () {
              Navigator.pushNamed(context, 'initial_page');
            },
          )),
    );
2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?