flutter - 如何更改颤动的页面切换动画?
问题描述
在 Flutter 中使用页面切换功能。当我使用 GetMaterialApp 时,我可以简单地在 getPages 中使用 transitionDuration: Duration.zero
但是,我使用 onGenerateRoute 作为与路由相关的问题。
这是我的代码
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return GetMaterialApp(
title: 'Flutter2 App',
theme: ThemeData(
primaryColor: Colors.grey,
),
initialRoute: "/auth",
initialBinding: InitBinding(),
onGenerateRoute: (RouteSettings routeSettings) {
WidgetBuilder builder;
switch (routeSettings.name) {
case '/':
builder = (BuildContext context) {
return FocusTraversalGroup(
policy: WidgetOrderTraversalPolicy(), child: AnalysePage());
};
break;
case '/auth':
if (GetPlatform.isWeb) {
builder = (BuildContext context) => AuthPage();
} else {
builder = (BuildContext context) => MobileAuthPage();
}
break;
case '/detail':
builder = (BuildContext context) {
return FocusTraversalGroup(
policy: WidgetOrderTraversalPolicy(),
child: AnalyseDetailPage());
};
break;
default:
if (routeSettings.name!.startsWith('access_token')) {
var token = routeSettings.name!.split('&')[0].split('=')[1];
builder = (BuildContext context) {
return FocusTraversalGroup(
policy: WidgetOrderTraversalPolicy(),
child: AnalysePage(
name: token,
),
);
};
} else {
builder = (BuildContext context) {
return FocusTraversalGroup(
policy: WidgetOrderTraversalPolicy(), child: AnalysePage());
};
}
}
return MaterialPageRoute(builder: builder, settings: routeSettings);
},
localizationsDelegates: [
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
],
);
}
}
我想将持续时间设置为 0 以防止在页面切换时显示动画。