首页 > 解决方案 > 如何在颤振应用程序中返回应用程序的第一页?

问题描述

所以我创建了一个应用程序,它有 4 个页面,然后是一个 webview,所以每当用户从 webview 注销时,我都会推送起始屏幕。我希望我的应用程序转到第一页。我试过了:

Navigator.of(context).pushNamed('/welcomeScreen');
Navigator.popUntil(context,ModalRoute.withName('/welcomeScreen'));

但没有运气。我认为这可能是因为 webview。这是我的路线。

final routes = {
'/login': (BuildContext context) => new LoginScreen(),
'/home': (BuildContext context) => new HomeScreen(),
'/welcomeScreen':(BuildContext context) => new WelcomeScreen(),
'/email': (BuildContext context) => new EmailScreen(),
'/webview': (BuildContext context) => new WebviewScreen()
};

标签: dartflutter

解决方案


此功能将设置页面根页面,因此它应该适用于注销情况。

Navigator.pushAndRemoveUnitl我猜你在找什么。

void makeRoutePage({BuildContext context, Widget pageRef}) {
  Navigator.pushAndRemoveUntil(
      context,
      MaterialPageRoute(builder: (context) => pageRef),
      (Route<dynamic> route) => false);
}

如何使用它 :

makeRoutePage(context: context, pageRef: YourFirstPage());

推荐阅读