【 Flutter 】Flutter を 基礎 から 学習 ( Material ComponentsとiOS-Style ) part161 Material Components

基礎 から 学ぶ Flutter 」という書籍で  学習 したことを ブログでアウトプットしていこうと思います。今回は Material ComponentsとiOS-Style ( part161 )です。

前回

【 Flutter 】Flutter を 基礎 から 学習 ( Material ComponentsとiOS-Style ) part160 Material Components

引き続き、Material Componentsについて学びます。

SnackBarウィジェット

SnackBarウィジェットは画面の下部からニョキッと表示され(原文まま)るウィジェットです。
Windowsではtoast(トースト)通知と呼んでいる機能ではないでしょうか。

このSnackBarウィジェット、Flutter2よりも前にはSaffoldSnackBarウィジェットを使用することになっていました。
しかしFlutter2ではこのSnackBarは非推奨となり代わりにScaffoldMessengerSnackBarウィジェットを用いることが推奨されています。

SaffoldSnackBarウィジェットには非同期処理でうまくいかないことがあったようですね。

 

 

あれ???期待した動作をしませんね・・・。

最後に

本書をよく見ると

引数のcontextを利用しても動作しません。

とありました。別の章の「BuildContext」で説明するそうです。
驚きました😆

本書のサンプルではSaffoldSnackBarウィジェットを使用しているように見えません。
実際に使用するべきなのはScaffoldStateのようで、Flutter1での取得方法は本書で紹介しているグローバルキーの方法とScaffold.ofの2つなんだそうです。

今日はここまで!

参考

Snackbars – Material Design

ちょっとした通知と簡単なアクションを促すのに便利なスナックバー – 各種 Material ウィジェットの使い方 – Flutter 入門 (keicode.com)

Flutter2のScaffoldMessengerで画面戻りにSnackBarを表示できるようになった | ZUMA Lab (zuma-lab.com)