From 419f936c4139178272408263a5eb2a9734441153 Mon Sep 17 00:00:00 2001 From: Lucas Delanier Date: Fri, 7 Oct 2022 23:41:07 +0200 Subject: [PATCH] ajout animation bouton plus navigation entre les pages --- daflmusic/lib/homePage/main_homepage.dart | 39 +++++++-- .../lib/signInPage/main_signIn_page.dart | 68 +++++++++++----- .../lib/signUpPage/main_signUp_page.dart | 80 ++++++++++++------- 3 files changed, 136 insertions(+), 51 deletions(-) diff --git a/daflmusic/lib/homePage/main_homepage.dart b/daflmusic/lib/homePage/main_homepage.dart index ea91917..ff5c546 100644 --- a/daflmusic/lib/homePage/main_homepage.dart +++ b/daflmusic/lib/homePage/main_homepage.dart @@ -1,5 +1,10 @@ + import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; +import 'package:page_transition/page_transition.dart'; +import 'package:daflmusic/signInPage/main_signIn_page.dart'; +import 'package:daflmusic/homePage/main_homepage.dart'; +import 'package:daflmusic/signUpPage/main_signUp_page.dart'; class MainHomePage extends StatefulWidget { const MainHomePage({Key? key}) : super(key: key); @@ -31,7 +36,8 @@ class _MainHomePage extends State { 'assets/images/Logo.png', width: 250, ), - Container( + GestureDetector( + child: Container( child: Align( alignment: Alignment.center, child: Text("CONTINUER AVEC SPOTIFY", @@ -51,8 +57,19 @@ class _MainHomePage extends State { ),// Set rounded corner radius ), - ), - Container( + ),), + GestureDetector( + onTap: (){ + Navigator.of(context).push( + PageTransition( + type: PageTransitionType.bottomToTop, + childCurrent: widget, + duration: Duration(milliseconds: 600), + reverseDuration: Duration(milliseconds: 600), + child: MainSignUpPage()), + ); + }, + child: Container( child: Align( alignment: Alignment.center, child: Text("S’INSCRIRE MAINTENANT", @@ -73,9 +90,20 @@ class _MainHomePage extends State { ),// Set rounded corner radius ), - ), + ),), SizedBox(height: 220,), - Container( + GestureDetector( + onTap: (){ + Navigator.of(context).push( + PageTransition( + type: PageTransitionType.bottomToTopJoined, + childCurrent: widget, + duration: Duration(milliseconds: 600), + reverseDuration: Duration(milliseconds: 600), + child: MainSignInPage()), + ); + }, + child: Container( child: Align( alignment: Alignment.center, child: Text("SE CONNECTER", @@ -94,6 +122,7 @@ class _MainHomePage extends State { ), ), + ), ], diff --git a/daflmusic/lib/signInPage/main_signIn_page.dart b/daflmusic/lib/signInPage/main_signIn_page.dart index 2d8a9a4..b98f34c 100644 --- a/daflmusic/lib/signInPage/main_signIn_page.dart +++ b/daflmusic/lib/signInPage/main_signIn_page.dart @@ -1,5 +1,9 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; +import 'package:daflmusic/signInPage/main_signIn_page.dart'; +import 'package:daflmusic/homePage/main_homepage.dart'; +import 'package:daflmusic/signUpPage/main_signUp_page.dart'; +import 'package:page_transition/page_transition.dart'; class MainSignInPage extends StatefulWidget { const MainSignInPage({Key? key}) : super(key: key); @@ -9,6 +13,8 @@ class MainSignInPage extends StatefulWidget { } class _MainSignInPageState extends State { + var boxColor = Colors.white; + @override bool isChecked = false; Widget build(BuildContext context) { @@ -150,26 +156,49 @@ class _MainSignInPageState extends State { ), ), SizedBox(height: 50,), - Container( - child: Align( - alignment: Alignment.center, - child: Image.asset( - 'assets/images/arrow.png', - width: 47, - ), - ), - margin: EdgeInsets.fromLTRB(60, 10, 60, 0), - width: 83, - height: 83, - decoration: BoxDecoration( - color: Color(0xFFEEEEEE), - borderRadius: BorderRadius.all( - Radius.circular(22)), - border: Border.all( - width: 1.5, - color: Colors.white, - ),// Set rounded corner radius + ClipRRect( + borderRadius: BorderRadius.circular(22), + + child: Material( + + child: InkWell( + highlightColor: Colors.grey.shade100, + splashColor: Color(0xFF406DE1), + onTap: (){ + Navigator.of(context).push( + PageTransition( + type: PageTransitionType.topToBottomJoined, + childCurrent: widget, + duration: Duration(milliseconds: 600), + reverseDuration: Duration(milliseconds: 600), + child: MainHomePage()), + ); + }, + child:Ink( + child: Align( + alignment: Alignment.center, + child: Image.asset( + 'assets/images/valid_logo.png', + width: 40, + ), + ), + padding: EdgeInsets.fromLTRB(0, 10, 0, 0), + width: 83, + height: 83, + decoration: BoxDecoration( + color: Colors.white,// Set rounded corner radius + boxShadow: [ + BoxShadow( + color: Colors.black.withOpacity(0.3), + spreadRadius: 5, + blurRadius: 7, + offset: Offset(0, 3), // changes position of shadow + ), + ], + ), + ), + ), ), ), SizedBox(height: 100,), @@ -205,3 +234,4 @@ class _MainSignInPageState extends State { ); } } + diff --git a/daflmusic/lib/signUpPage/main_signUp_page.dart b/daflmusic/lib/signUpPage/main_signUp_page.dart index 6e65961..b510f42 100644 --- a/daflmusic/lib/signUpPage/main_signUp_page.dart +++ b/daflmusic/lib/signUpPage/main_signUp_page.dart @@ -1,5 +1,9 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; +import 'package:page_transition/page_transition.dart'; +import 'package:daflmusic/signInPage/main_signIn_page.dart'; +import 'package:daflmusic/homePage/main_homepage.dart'; +import 'package:daflmusic/signUpPage/main_signUp_page.dart'; class MainSignUpPage extends StatefulWidget { const MainSignUpPage({Key? key}) : super(key: key); @@ -9,6 +13,9 @@ class MainSignUpPage extends StatefulWidget { } class _MainSignUpPageState extends State { + + Color boxColor = Colors.white; + bool isHovering = false; @override TextEditingController passwordconfirm = new TextEditingController(); bool isChecked = false; @@ -215,35 +222,53 @@ class _MainSignUpPageState extends State { ) ), SizedBox(height: 30,), - Container( - child: Align( - alignment: Alignment.center, - child: Image.asset( - 'assets/images/arrow.png', - width: 47, - ), - ), - margin: EdgeInsets.fromLTRB(60, 10, 60, 0), - width: 83, - height: 83, - decoration: BoxDecoration( - color: Color(0xFFEEEEEE), - borderRadius: BorderRadius.all( - Radius.circular(22)), - border: Border.all( - width: 1.5, - color: Colors.white, - ),// Set rounded corner radius - boxShadow: [ - BoxShadow( - color: Colors.black.withOpacity(0.3), - spreadRadius: 5, - blurRadius: 7, - offset: Offset(0, 3), // changes position of shadow + ClipRRect( + borderRadius: BorderRadius.circular(22), + + child: Material( + + child: InkWell( + highlightColor: Colors.grey.shade100, + splashColor: Color(0xFF406DE1), + onTap: (){ + setState(() { + boxColor = Colors.blue; + }); + Navigator.of(context).push( + PageTransition( + type: PageTransitionType.fade, + childCurrent: widget, + duration: Duration(milliseconds: 600), + reverseDuration: Duration(milliseconds: 600), + child: MainHomePage()), + ); + }, + child:Ink( + child: Align( + alignment: Alignment.center, + child: Image.asset( + 'assets/images/valid_logo.png', + width: 47, + ), + ), + padding: EdgeInsets.fromLTRB(0, 10, 0, 0), + width: 83, + height: 83, + decoration: BoxDecoration( + color: Colors.white,// Set rounded corner radius + boxShadow: [ + BoxShadow( + color: Colors.black.withOpacity(0.3), + spreadRadius: 5, + blurRadius: 7, + offset: Offset(0, 3), // changes position of shadow + ), + ], + ), + ), - ], + ), ), - ), SizedBox(height: 100,), Center( @@ -278,3 +303,4 @@ class _MainSignUpPageState extends State { ); } } +