Sur l'API Android, nous pouvons utiliser
overridePendingTransition(int enterAnim, int exitAnim)
pour définir les transitions d'entrée et de sortie.
Comment le faire dans Flutter ?
J'ai implémenté ce code
class SlideLeftRoute extends PageRouteBuilder {
final Widget enterWidget;
SlideLeftRoute({this.enterWidget})
: super(
pageBuilder: (BuildContext context, Animation<double> animation, Animation<double> secondaryAnimation) {
return enterWidget;
},
transitionsBuilder: (BuildContext context, Animation<double> animation, Animation<double> secondaryAnimation, Widget child) {
return SlideTransition(
position: new Tween<Offset>(
begin: const Offset(1.0, 0.0),
end: Offset.zero,
).animate(animation),
child: child
);
},
);
}
mais il ne définit que la transition d'entrée. Comment puis-je définir la transition de sortie ?
UPDATE
Imaginons que j'ai deux écrans (Screen1 et Screen2), lorsque j'exécute la fonction
Navigator.push(
context, SlideLeftRoute(enterWidget: Screen2()));
Je voudrais appliquer une animation à la fois à l'écran 1 et à l'écran 2 et pas seulement à l'écran 2.