Skip to content

Commit a88824e

Browse files
committed
Make home page
1 parent d821539 commit a88824e

File tree

1 file changed

+95
-104
lines changed

1 file changed

+95
-104
lines changed

lib/main.dart

+95-104
Original file line numberDiff line numberDiff line change
@@ -1,117 +1,108 @@
11
import 'package:flutter/material.dart';
2+
import 'package:flutter/widgets.dart';
3+
import 'package:login_page_day_23/animation/FadeAnimation.dart';
4+
import 'package:login_page_day_23/login.dart';
5+
import 'package:login_page_day_23/signup.dart';
26

37
void main() {
4-
runApp(MyApp());
8+
runApp(
9+
MaterialApp(
10+
debugShowCheckedModeBanner: false,
11+
home: HomePage(),
12+
)
13+
);
514
}
615

7-
class MyApp extends StatelessWidget {
8-
// This widget is the root of your application.
16+
class HomePage extends StatelessWidget {
917
@override
1018
Widget build(BuildContext context) {
11-
return MaterialApp(
12-
title: 'Flutter Demo',
13-
theme: ThemeData(
14-
// This is the theme of your application.
15-
//
16-
// Try running your application with "flutter run". You'll see the
17-
// application has a blue toolbar. Then, without quitting the app, try
18-
// changing the primarySwatch below to Colors.green and then invoke
19-
// "hot reload" (press "r" in the console where you ran "flutter run",
20-
// or simply save your changes to "hot reload" in a Flutter IDE).
21-
// Notice that the counter didn't reset back to zero; the application
22-
// is not restarted.
23-
primarySwatch: Colors.blue,
24-
// This makes the visual density adapt to the platform that you run
25-
// the app on. For desktop platforms, the controls will be smaller and
26-
// closer together (more dense) than on mobile platforms.
27-
visualDensity: VisualDensity.adaptivePlatformDensity,
28-
),
29-
home: MyHomePage(title: 'Flutter Demo Home Page'),
30-
);
31-
}
32-
}
33-
34-
class MyHomePage extends StatefulWidget {
35-
MyHomePage({Key key, this.title}) : super(key: key);
36-
37-
// This widget is the home page of your application. It is stateful, meaning
38-
// that it has a State object (defined below) that contains fields that affect
39-
// how it looks.
40-
41-
// This class is the configuration for the state. It holds the values (in this
42-
// case the title) provided by the parent (in this case the App widget) and
43-
// used by the build method of the State. Fields in a Widget subclass are
44-
// always marked "final".
45-
46-
final String title;
47-
48-
@override
49-
_MyHomePageState createState() => _MyHomePageState();
50-
}
51-
52-
class _MyHomePageState extends State<MyHomePage> {
53-
int _counter = 0;
54-
55-
void _incrementCounter() {
56-
setState(() {
57-
// This call to setState tells the Flutter framework that something has
58-
// changed in this State, which causes it to rerun the build method below
59-
// so that the display can reflect the updated values. If we changed
60-
// _counter without calling setState(), then the build method would not be
61-
// called again, and so nothing would appear to happen.
62-
_counter++;
63-
});
64-
}
65-
66-
@override
67-
Widget build(BuildContext context) {
68-
// This method is rerun every time setState is called, for instance as done
69-
// by the _incrementCounter method above.
70-
//
71-
// The Flutter framework has been optimized to make rerunning build methods
72-
// fast, so that you can just rebuild anything that needs updating rather
73-
// than having to individually change instances of widgets.
7419
return Scaffold(
75-
appBar: AppBar(
76-
// Here we take the value from the MyHomePage object that was created by
77-
// the App.build method, and use it to set our appbar title.
78-
title: Text(widget.title),
79-
),
80-
body: Center(
81-
// Center is a layout widget. It takes a single child and positions it
82-
// in the middle of the parent.
83-
child: Column(
84-
// Column is also a layout widget. It takes a list of children and
85-
// arranges them vertically. By default, it sizes itself to fit its
86-
// children horizontally, and tries to be as tall as its parent.
87-
//
88-
// Invoke "debug painting" (press "p" in the console, choose the
89-
// "Toggle Debug Paint" action from the Flutter Inspector in Android
90-
// Studio, or the "Toggle Debug Paint" command in Visual Studio Code)
91-
// to see the wireframe for each widget.
92-
//
93-
// Column has various properties to control how it sizes itself and
94-
// how it positions its children. Here we use mainAxisAlignment to
95-
// center the children vertically; the main axis here is the vertical
96-
// axis because Columns are vertical (the cross axis would be
97-
// horizontal).
98-
mainAxisAlignment: MainAxisAlignment.center,
99-
children: <Widget>[
100-
Text(
101-
'You have pushed the button this many times:',
102-
),
103-
Text(
104-
'$_counter',
105-
style: Theme.of(context).textTheme.headline4,
106-
),
107-
],
20+
body: SafeArea(
21+
child: Container(
22+
width: double.infinity,
23+
height: MediaQuery.of(context).size.height,
24+
padding: EdgeInsets.symmetric(horizontal: 30, vertical: 50),
25+
child: Column(
26+
mainAxisAlignment: MainAxisAlignment.spaceBetween,
27+
crossAxisAlignment: CrossAxisAlignment.center,
28+
children: <Widget>[
29+
Column(
30+
children: <Widget>[
31+
FadeAnimation(1, Text("Welcome", style: TextStyle(
32+
fontWeight: FontWeight.bold,
33+
fontSize: 30
34+
),)),
35+
SizedBox(height: 20,),
36+
FadeAnimation(1.2, Text("Automatic identity verification which enables you to verify your identity",
37+
textAlign: TextAlign.center,
38+
style: TextStyle(
39+
color: Colors.grey[700],
40+
fontSize: 15
41+
),)),
42+
],
43+
),
44+
FadeAnimation(1.4, Container(
45+
height: MediaQuery.of(context).size.height / 3,
46+
decoration: BoxDecoration(
47+
image: DecorationImage(
48+
image: AssetImage('assets/illustration.png')
49+
)
50+
),
51+
)),
52+
Column(
53+
children: <Widget>[
54+
FadeAnimation(1.5, MaterialButton(
55+
minWidth: double.infinity,
56+
height: 60,
57+
onPressed: () {
58+
Navigator.push(context, MaterialPageRoute(builder: (context) => LoginPage()));
59+
},
60+
shape: RoundedRectangleBorder(
61+
side: BorderSide(
62+
color: Colors.black
63+
),
64+
borderRadius: BorderRadius.circular(50)
65+
),
66+
child: Text("Login", style: TextStyle(
67+
fontWeight: FontWeight.w600,
68+
fontSize: 18
69+
),),
70+
)),
71+
SizedBox(height: 20,),
72+
FadeAnimation(1.6, Container(
73+
padding: EdgeInsets.only(top: 3, left: 3),
74+
decoration: BoxDecoration(
75+
borderRadius: BorderRadius.circular(50),
76+
border: Border(
77+
bottom: BorderSide(color: Colors.black),
78+
top: BorderSide(color: Colors.black),
79+
left: BorderSide(color: Colors.black),
80+
right: BorderSide(color: Colors.black),
81+
)
82+
),
83+
child: MaterialButton(
84+
minWidth: double.infinity,
85+
height: 60,
86+
onPressed: () {
87+
Navigator.push(context, MaterialPageRoute(builder: (context) => SignupPage()));
88+
},
89+
color: Colors.yellow,
90+
elevation: 0,
91+
shape: RoundedRectangleBorder(
92+
borderRadius: BorderRadius.circular(50)
93+
),
94+
child: Text("Sign up", style: TextStyle(
95+
fontWeight: FontWeight.w600,
96+
fontSize: 18
97+
),),
98+
),
99+
))
100+
],
101+
)
102+
],
103+
),
108104
),
109105
),
110-
floatingActionButton: FloatingActionButton(
111-
onPressed: _incrementCounter,
112-
tooltip: 'Increment',
113-
child: Icon(Icons.add),
114-
), // This trailing comma makes auto-formatting nicer for build methods.
115106
);
116107
}
117108
}

0 commit comments

Comments
 (0)