[Flutter] AppBarのバックボタンを隠す

2023-03-18 hit count image

FlutterのAppBarで自動で生成されたバックボタンを隠す方法について説明します。

概要

Flutterで画面を切り替えると、何にも設定をしなくても次のように2つ目の画面のAppBarにバックボタンが自動で生成されることが確認できます。

Flutter automaticallyImplyLeading - back button

今回のブログポストでは自動で生成されたAppBarのバックボタンを隠す方法について説明します。

ここで紹介するソースコードはGitHubで確認できます。

バックボタンを隠す

AppBarウィジェットでは次のようにleadingが設定されてない場合もバックボタンが表示されます。

class SecondScreen extends StatelessWidget {
  const SecondScreen({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('Second Screen'),
      ),
      body: Center(
        child: ElevatedButton(
          onPressed: () => Navigator.pop(context),
          child: const Text('Go Back'),
        ),
      ),
    );
  }
}
Flutter automaticallyImplyLeading - back button

このように表示されたバックボタンを隠すためにはAppBarウィジェットのautomaticallyImplyLeadingを使う必要があります。

バックボタンを隠したい画面で次のようにAppBarウィジェットのautomaticallyImplyLeadingを設定します。

class SecondScreen extends StatelessWidget {
  const SecondScreen({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        automaticallyImplyLeading: false,
        title: const Text('Second Screen'),
      ),
      body: Center(
        child: ElevatedButton(
          onPressed: () => Navigator.pop(context),
          child: const Text('Go Back'),
        ),
      ),
    );
  }
}

そしたら次のようにバックボタンがなくなることが確認できます。

Flutter automaticallyImplyLeading - hide back button

完了

今回のブログポストではAppBarウィジェットで自動で表示されたバックボタンを隠す方法について見てみました。自動でバックボタンを作ってくれるので楽ですが、要らない場合もあるので、automaticallyImplyLeadingオプションをよく覚えておきましょう。

私のブログが役に立ちましたか?下にコメントを残してください。それは私にとって大きな大きな力になります!

アプリ広報

今見てるブログを作成たDekuが開発したアプリを使ってみてください。
Dekuが開発したアプリはFlutterで開発されています。

興味がある方はアプリをダウンロードしてアプリを使ってくれると本当に助かります。

Posts