Open1
Navigatorのpopとpushの違い
FlutterのNavigator
クラスは、アプリケーション内で画面間の遷移を管理するための重要なクラスです。pop
およびpush
は、Navigator
を使用して画面遷移を制御する際に使われるメソッドです。
-
push
メソッド:
push
メソッドは、新しい画面をスタックに追加し、画面遷移を行います。新しい画面を表示する際に使用します。例えば、新しい画面に遷移するときに使用します。Navigator.push( context, MaterialPageRoute(builder: (context) => NewScreen()), );
-
pop
メソッド:
pop
メソッドは、現在の画面をスタックから削除し、一つ前の画面に戻るために使用します。これは、通常、"戻る"ボタンや特定のアクションに対する応答として使われます。Navigator.pop(context);
また、
pop
メソッドは、引数として値を渡すこともできます。この値は、前の画面に戻った際に渡され、前の画面で利用することができます。Navigator.pop(context, result);
そして前の画面で受け取る際には、
pop
メソッドの呼び出し結果から取得できます。var result = await Navigator.push(context, MaterialPageRoute(builder: (context) => NewScreen())); // resultを利用する
簡単に言えば、push
は新しい画面への遷移を行い、pop
は現在の画面を閉じて前の画面に戻る遷移を行うという違いがあります。