[Flutter]SnackBarを閉じるには?

Flutter

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

表示中のSnackBarを閉じる方法を紹介します。

スポンサーリンク

方法

プログラマー, プログラミング, コード, 仕事, コンピューター

表示中のSnackBarを閉じるには、ScaffoldMessengerのhideCurrentSnackBarを使います。

具体的には、SnackBarを閉じる処理を追加したい場所で、ScaffoldMessenger.of(context).hideCurrentSnackBarを指定します。

ScaffoldMessenger.of(context).hideCurrentSnackBar(); //閉じる処理で指定

hideCurrentSnackBarが呼び出されると、SnackBarが閉じられます。

使用例

以下は、使用例です。

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: Column(
          children: [
            ElevatedButton(
              onPressed: () {
                ScaffoldMessenger.of(context).showSnackBar(
                  SnackBar(
                    content: Text('Snackbar message'),
                    duration: Duration(seconds: 5),
                  ),
                );
              },
              child: Text('Show'),
            ),
            ElevatedButton(
              onPressed: () {
                ScaffoldMessenger.of(context).hideCurrentSnackBar();
              },
              child: Text('Close'),
              style: ElevatedButton.styleFrom(primary: Colors.pink),
            )
          ],
          mainAxisSize: MainAxisSize.min,
        ),
      ),
    );
  }

コメント

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