canTransitionTo method
Returns true if this route supports a transition animation that runs
when nextRoute is pushed on top of it or when nextRoute is popped
off of it.
Subclasses can override this method to restrict the set of routes they need to coordinate transitions with.
If true, and nextRoute.canTransitionFrom() is true, then the
ModalRoute.buildTransitions secondaryAnimation will run from 0.0 - 1.0
when nextRoute is pushed on top of this one. Similarly, if
the nextRoute is popped off of this route, the
secondaryAnimation will run from 1.0 - 0.0.
If false, this route's ModalRoute.buildTransitions secondaryAnimation parameter
value will be kAlwaysDismissedAnimation. In other words, this route
will not animate when nextRoute is pushed on top of it or when
nextRoute is popped off of it.
Returns true by default.
See also:
- canTransitionFrom, which must be true for
nextRoutefor the ModalRoute.buildTransitionssecondaryAnimationto run.
Implementation
@override
bool canTransitionTo(TransitionRoute nextRoute) {
bool togetherSlide = config.togetherSlide;
if (togetherSlide && config.from.dy != 0) {
// 需要同时位移时 && 上下移动位移不需要执行动画
return false;
}
return super.canTransitionTo(nextRoute);
}