facebook twitter hatena line email

「Flutter/画面遷移/画面遷移イベント検知」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(ページの作成:「==Scaffoldの画面でイベント検知する== _TextPageState と ArticleTextPage は各々のクラス名を入れる。 class _TextPageState extends State<ArticleTe...」)
(相違点なし)

2019年11月16日 (土) 15:26時点における版

Scaffoldの画面でイベント検知する

_TextPageState と ArticleTextPage は各々のクラス名を入れる。

class _TextPageState extends State<ArticleTextPage> with RouteAware {

 RouteObserver<PageRoute> routeObserver = new RouteObserver<PageRoute>();
 @override
 void didChangeDependencies() {
   super.didChangeDependencies();
   routeObserver.subscribe(this, ModalRoute.of(context));
 }
 @override
 void dispose() {
   routeObserver.unsubscribe(this);
   super.dispose();
 }
 // 上の画面がpopされて、この画面に戻ったときに呼ばれます
 void didPopNext() {
   debugPrint("didPopNext ${runtimeType}");
 }
 // この画面がpushされたときに呼ばれます
 void didPush() {
   debugPrint("didPush ${runtimeType}");
 }
 // この画面がpopされたときに呼ばれます
 void didPop() {
   debugPrint("didPop ${runtimeType}");
 }
 // この画面から新しい画面をpushしたときに呼ばれます
 void didPushNext() {
   debugPrint("didPushNext ${runtimeType}");
 }

参考:https://qiita.com/najeira/items/89d8014a30102204babb