android - 当我使用根名称进行导航时,如何在 flutter 中创建全屏对话框?

标签 android ios dart flutter cross-platform

这是使用 rootName 的示例代码,但在这里我无法使用 MaterialPageRoute 来获取 fullScreenDialog 属性。

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      initialRoute: '/',
      routes: {
        '/': (context) => MyHomePage(),
        '/under-development': (context) => UnderDevelopment(),
        '/profile1': (context) => Profile1()
      },
      title: appName,
      debugShowCheckedModeBanner: false,
      theme: ThemeData(
          primaryColor: primaryColor,
          accentColor: secondaryColor,
          fontFamily: 'Poppins'),
    );
  }
}

导航器

onTap: () {
    Navigator.pushNamed(context, '/profile1');
},

最佳答案

您可以在 Material App 中使用类似这样的东西。希望对您有所帮助。

onGenerateRoute: (RouteSettings settings) {
        List<String> pathElements = settings.name.split("/");
        if (pathElements[0] != "") return null;
        switch (pathElements[1]) {
          case "home":
          String userID = pathElements[2];  
            return MaterialPageRoute(
        builder: (context) => ReportsPage(
              userID: userID,
            ),fullscreenDialog: true);

        }
      },

关于android - 当我使用根名称进行导航时,如何在 flutter 中创建全屏对话框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52922743/

相关文章:

java - 如何在 "query"方法中传递选择参数

android - RecyclerView 在顶部添加项目并继续滚动

ios - UISplitView showDetailViewController : not working on a device

flutter - Paragraph 类的 Flutter 宽度指标是什么意思?

flutter - 有没有办法在 flutter vlc player 中处理网络缓存选项?

dart - 请帮忙提供一个简单的例子来在 dart 中为 protobuf 编码

android - 如何在 Android 中创建类似 Twitter 个人资料页面的布局

在 Android Studio (Linux) 中启动时 Android Emulator 设备崩溃

ios - 跨重叠同级 View 的同步手势

ios - 缺少所需的模块 'libxml2'