Flutter › Hero Animations & Page Transitions
How do you properly create a genuinely fully custom page transition animation in Flutter, beyond simply relying entirely on the platform's own default built in slide or fade transition, using PageRouteBuilder?
IntermediateAnswer
PageRouteBuilder lets you define a genuinely fully custom page transition animation by providing your own specific transitionsBuilder function, which receives the current in progress animation value and returns exactly how the incoming new page should actually be genuinely visually presented throughout that specific transition, letting you implement genuinely creative custom effects such as a smooth scale transition, a subtle rotation effect, or a genuinely combined fade together with slide effect, rather than simply relying entirely on the platform's own default built in transition behavior for every single one of your app's screens.
PageRouteBuilder(
pageBuilder: (context, animation, secondaryAnimation) => DetailScreen(),
transitionsBuilder: (context, animation, secondaryAnimation, child) {
return FadeTransition(opacity: animation, child: child);
},
)Real-world example A photography portfolio app uses a genuinely fully custom PageRouteBuilder to smoothly fade in each new destination screen rather than using the platform's own default built in sliding transition, achieving a considerably more genuinely elegant, distinctive feel specifically matching their own particular brand's visual style.