// Copyright 2014 The Flutter Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. import 'package:flutter/material.dart'; /// Flutter code sample for [PageTransitionsTheme]. void main() => runApp(const PageTransitionsThemeApp()); class PageTransitionsThemeApp extends StatelessWidget { const PageTransitionsThemeApp({super.key}); @override Widget build(BuildContext context) { return MaterialApp( theme: ThemeData( useMaterial3: true, pageTransitionsTheme: const PageTransitionsTheme( builders: <TargetPlatform, PageTransitionsBuilder>{ TargetPlatform.android: ZoomPageTransitionsBuilder( allowSnapshotting: false, ), }, ), ), home: const HomePage(), ); } } class HomePage extends StatelessWidget { const HomePage({super.key}); @override Widget build(BuildContext context) { return Scaffold( backgroundColor: Colors.blueGrey, body: Center( child: ElevatedButton( onPressed: () { Navigator.of(context).push( MaterialPageRoute<SecondPage>( builder: (BuildContext context) => const SecondPage(), ), ); }, child: const Text('To SecondPage'), ), ), ); } } class SecondPage extends StatelessWidget { const SecondPage({super.key}); @override Widget build(BuildContext context) { return Scaffold( backgroundColor: Colors.purple[200], body: Center( child: ElevatedButton( onPressed: () { Navigator.of(context).pop(); }, child: const Text('Back to HomePage'), ), ), ); } }