From 8524e81a76cad457db9b35047c6f27876befe108 Mon Sep 17 00:00:00 2001 From: Nilo Roberto C Paim Date: Sun, 26 Nov 2023 08:08:48 -0300 Subject: [PATCH] transition on each page --- lib/app/app_page.dart | 13 +++++++++++++ lib/app/login/login_page.dart | 13 +++++++++++++ lib/app/test/test_page.dart | 13 +++++++++++++ lib/components/nc_base_page.dart | 13 ++++++++++--- 4 files changed, 49 insertions(+), 3 deletions(-) diff --git a/lib/app/app_page.dart b/lib/app/app_page.dart index 4c3ed3f..953d29a 100644 --- a/lib/app/app_page.dart +++ b/lib/app/app_page.dart @@ -4,6 +4,19 @@ import 'package:routefly/routefly.dart'; import '../components/nc_button.dart'; +Route routeBuilder(BuildContext ctx, RouteSettings settings) { + return PageRouteBuilder( + transitionDuration: const Duration(seconds: 5), + pageBuilder: (_, a1, a2) => const AppPage(), + transitionsBuilder: (_, a1, a2, child) { + return FadeTransition( + opacity: a1, + child: child, + ); + }, + ); +} + class AppPage extends StatelessWidget { const AppPage({super.key}); diff --git a/lib/app/login/login_page.dart b/lib/app/login/login_page.dart index 722d586..60d02be 100644 --- a/lib/app/login/login_page.dart +++ b/lib/app/login/login_page.dart @@ -1,6 +1,19 @@ import 'package:flutter/material.dart'; import 'package:pcast/components/nc_base_page.dart'; +Route routeBuilder(BuildContext ctx, RouteSettings settings) { + return PageRouteBuilder( + transitionDuration: const Duration(seconds: 5), + pageBuilder: (_, a1, a2) => const LoginPage(), + transitionsBuilder: (_, a1, a2, child) { + return FadeTransition( + opacity: a1, + child: child, + ); + }, + ); +} + class LoginPage extends StatefulWidget { const LoginPage({super.key}); diff --git a/lib/app/test/test_page.dart b/lib/app/test/test_page.dart index 474b266..8098b43 100644 --- a/lib/app/test/test_page.dart +++ b/lib/app/test/test_page.dart @@ -1,6 +1,19 @@ import 'package:flutter/material.dart'; import 'package:pcast/components/nc_base_page.dart'; +Route routeBuilder(BuildContext ctx, RouteSettings settings) { + return PageRouteBuilder( + transitionDuration: const Duration(seconds: 5), + pageBuilder: (_, a1, a2) => const TestPage(), + transitionsBuilder: (_, a1, a2, child) { + return FadeTransition( + opacity: a1, + child: child, + ); + }, + ); +} + class TestPage extends StatefulWidget { const TestPage({super.key}); diff --git a/lib/components/nc_base_page.dart b/lib/components/nc_base_page.dart index 96066e1..8aff237 100644 --- a/lib/components/nc_base_page.dart +++ b/lib/components/nc_base_page.dart @@ -1,4 +1,5 @@ import 'package:flutter/material.dart'; +import 'package:routefly/routefly.dart'; class NcBasePage extends StatelessWidget { const NcBasePage({super.key, required this.body}); @@ -8,8 +9,14 @@ class NcBasePage extends StatelessWidget { @override Widget build(BuildContext context) { return Scaffold( - backgroundColor: const Color(0xffa600f9), - body: body, - ); + backgroundColor: const Color(0xffa600f9), + body: body, + floatingActionButton: FloatingActionButton( + onPressed: () => { + Routefly.navigate('/'), + }, + backgroundColor: Colors.white, + child: const Icon(Icons.home), + )); } }