Flutter: 前の画面に戻るナビゲーションを提供せずに新しい画面に移動する 質問する

Flutter: 前の画面に戻るナビゲーションを提供せずに新しい画面に移動する 質問する

Flutter アプリに認証フローを実装しています。

サインインを試みた後、CheckAuth(ユーザーがサインインしているかどうかを確認し、それに応じてホーム画面またはサインアップ画面を開きます)このコードで開きます:

  void _signIn() async {
    await _auth
        .signInWithEmailAndPassword(
            email: _userEmail.trim(), password: _userPassword.trim())
        .then((task) {
      // go to home screen
      if (task.getIdToken() != null) {
        setState(() {
          Navigator.pushReplacement(
              context,
              new MaterialPageRoute(
                  builder: (BuildContext context) => new CheckAuth()));
        });
      } else {
        print("Authentication failed");
      }
    });
  }

問題: アプリに正常にサインインできますが、サインイン後に「戻る」ボタンをタップすると、サインイン画面に戻ります (アプリを終了することを期待しているのに)。

質問:Flutter で、戻ることなく 1 つの画面から別の画面に移動するにはどうすればよいですか?

ナビゲーターの履歴を何らかの方法で削除する必要がありますか?それともナビゲーターをまったく使用しないでください。試してみましたナビゲーター.置換方法を試しましたが、うまくいかなかったようです。

ベストアンサー1

使用する必要があるNavigator.pushReplacementのは出発認証画面も同様です。ログイン ページにリダイレクトするときだけではありません。

おすすめ記事