Во Flutter мы можем настроить анимацию смены вида, увеличив PageRoute
(или используя класс, который расширяет это).
Например, я изменяю анимацию на «слайд» в моемMaterialApplication
, используя CupertinoPageRoute
таким образом:
Navigator.of(context).pushReplacement(
CupertinoPageRoute(builder: (context) => Calendar()),
);
Теперь я хочу изменить это, используя именованные представления, определенные в файле main.dart
:
return MaterialApp(
title: 'Demo',
theme: myTheme, // => Theme.of(context).copyWith(...)
initialRoute: '/',
routes: {
'/': (context) => Login(),
'/calendar': (context) => Calendar(),
}
);
Таким образомЯ могу просто позвонить
Navigator.of(context).pushReplacementNamed('/calendar');
Что является более понятным и независимым от IMO.
Проблема с этим подходом заключается в том, что я не могу определить PageRoute
, поэтому я не могунастроить анимацию смены вида.
Есть ли способ сделать это?