在 flutter 中创建命名路由很简单且合乎逻辑,但只有在返回 MaterialApp 时才会如此。
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
initialRoute: "/";
return MaterialApp( //gives errors when I return a Container
routes: {
"/" : (context) => FirstRoute(),
"/second route" : (context) => SecondRoute()
}
);
}
}
我不是 Material Design 的狂热粉丝,想根据自己的设计创建一个 UI。
但是当我在返回容器时应用相同的模式时,我得到了一个错误。
所以我的问题是如何使用 vanilla Flutter App 命名路由设置,或者我是否被迫在我的项目中使用 MaterialApp?
提前致谢
最佳答案
MaterialApp 只是导航器等常用组件的集合。您也可以使用 CupertinoApp。 Material 在 iOS 上使用 iOS 导航动画,在 android 上使用 Android 动画。虽然您不会因为使用 MaterialApp 作为基础而拘泥于 UI 设计。您可以使用 Material 应用程序构建任何您想要的 UI,甚至可以使用 Cupertino 小部件。全取决于你。
关于Flutter - 如何在不使用 MaterialApp 的情况下处理导航?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56418291/