0% found this document useful (0 votes)
2 views8 pages

Complete Flutter Programs

Uploaded by

shreyachar9353
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views8 pages

Complete Flutter Programs

Uploaded by

shreyachar9353
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Complete Flutter Programs

6th - Weather App


import 'dart:convert';
import 'package:flutter/[Link]';
import 'package:http/[Link]' as http;

void main() => runApp(const MaterialApp(home: Weather()));

class Weather extends StatefulWidget {


const Weather({[Link]});

@override
State<Weather> createState() => _WeatherState();
}

class _WeatherState extends State<Weather> {


TextEditingController c = TextEditingController();

String city = "", temp = "";

String key = "YOUR_API_KEY";

getData(String name) async {


var r = await [Link]([Link](
"[Link]
q=$name&appid=$key&units=metric"));

var d = jsonDecode([Link]);

setState(() {
city = d['name'];
temp = "${d['main']['temp']} °C";
});
}

@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: const Text("Weather App")),
body: Padding(
padding: const [Link](20),
child: Column(
children: [
TextField(
controller: c,
decoration: InputDecoration(
hintText: "Enter City",
suffixIcon: IconButton(
icon: const Icon([Link]),
onPressed: () => getData([Link]),
),
),
),
const SizedBox(height: 40),
Text(city, style: const TextStyle(fontSize: 30)),
Text(temp, style: const TextStyle(fontSize: 40)),
],
),
),
);
}
}

7th - Stopwatch App


import 'dart:async';
import 'package:flutter/[Link]';

void main() {
runApp(const MaterialApp(home: Watch()));
}

class Watch extends StatefulWidget {


const Watch({[Link]});

@override
State<Watch> createState() => _WatchState();
}

class _WatchState extends State<Watch> {


Stopwatch s = Stopwatch();
late Timer t;

String time = "00:00:00";


List lap = [];

void start() {
if ([Link]) {
[Link]();
[Link]();
} else {
[Link]();
t = [Link](const Duration(seconds: 1), (_) {
setState(() {
time =
"${[Link]().padLeft(2, '0')}:"
"${([Link] % 60).toString().padLeft(2, '0')}:"
"${([Link] % 60).toString().padLeft(2, '0')}";
});
});
}
}

void reset() {
[Link]();
[Link]();
setState(() => time = "00:00:00");
}

@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: const Text("Stopwatch")),
body: Column(
mainAxisAlignment: [Link],
children: [
Text(time, style: const TextStyle(fontSize: 40)),
Row(
mainAxisAlignment: [Link],
children: [
ElevatedButton(
onPressed: start,
child: Text([Link] ? "Stop" : "Start"),
),
ElevatedButton(
onPressed: reset,
child: const Text("Reset"),
),
ElevatedButton(
onPressed: () => setState(() => [Link](time)),
child: const Text("Lap"),
),
],
),
Expanded(
child: [Link](
itemCount: [Link],
itemBuilder: (c, i) =>
Text("Lap ${i + 1} : ${lap[i]}"),
),
),
],
),
);
}
}

8th - Navigation App


import 'package:flutter/[Link]';

void main() => runApp(MaterialApp(home: App(), debugShowCheckedModeBanner:


false));

class App extends StatefulWidget {


@override
State<App> createState() => _AppState();
}

class _AppState extends State<App> {


int i = 0;
@override
Widget build(BuildContext context) {
return Scaffold(
body: i == 0
? Center(
child: ElevatedButton(
child: Text("Go Details"),
onPressed: () => [Link](
context,
MaterialPageRoute(builder: (_) => Details("Phone")),
),
),
)
: Center(child: Text("Profile", style: TextStyle(fontSize: 22))),
bottomNavigationBar: BottomNavigationBar(
currentIndex: i,
onTap: (v) => setState(() => i = v),
items: [
BottomNavigationBarItem(icon: Icon([Link]), label: "Home"),
BottomNavigationBarItem(icon: Icon([Link]), label: "Profile"),
],
),
);
}
}

class Details extends StatelessWidget {


final String name;
Details([Link]);

@override
Widget build(BuildContext context) => Scaffold(
appBar: AppBar(title: Text("Details")),
body: Center(
child: Column(
mainAxisAlignment: [Link],
children: [
Text("Product: $name"),
ElevatedButton(
child: Text("Back"),
onPressed: () => [Link](context),
)
],
),
),
);
}

9th - E-Commerce App


import 'package:flutter/[Link]';

void main() => runApp(MaterialApp(home: Home(), debugShowCheckedModeBanner:


false));

class Home extends StatelessWidget {


final p = [
{'n': 'Sneakers', 'p': 50, 'i': 'assets/[Link]'},
{'n': 'Bag', 'p': 35, 'i': 'assets/[Link]'},
{'n': 'Headphones', 'p': 80, 'i': 'assets/[Link]'},
];

@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text("E-Commerce")),
body: [Link](
padding: [Link](10),
itemCount: [Link],
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 2, crossAxisSpacing: 10, mainAxisSpacing: 10),
itemBuilder: (_, i) => GestureDetector(
onTap: () => [Link](
context,
MaterialPageRoute(builder: (_) => Details(p[i])),
),
child: Card(
child: Column(
mainAxisAlignment: [Link],
children: [
[Link](p[i]['i'], height: 80),
Text(p[i]['n'], style: TextStyle(fontWeight: [Link])),
Text("\$${p[i]['p']}", style: TextStyle(color: [Link])),
],
),
),
),
),
);
}
}

class Details extends StatelessWidget {


final Map p;
Details(this.p);

@override
Widget build(BuildContext context) => Scaffold(
appBar: AppBar(title: Text(p['n'])),
body: Column(
mainAxisAlignment: [Link],
children: [
[Link](p['i'], height: 180),
Text(p['n'], style: TextStyle(fontSize: 22, fontWeight:
[Link])),
Text("\$${p['p']}", style: TextStyle(fontSize: 18, color:
[Link])),
ElevatedButton(onPressed: () {}, child: Text("Add to Cart")),
],
),
);
}

Amazon UI App
import 'package:flutter/[Link]';

void main() {
runApp(MaterialApp(
debugShowCheckedModeBanner: false,
home: AmazonUI(),
));
}

class AmazonUI extends StatelessWidget {


final items = [
{"name": "Laptop", "price": "\$500"},
{"name": "Phone", "price": "\$300"},
{"name": "Headphones", "price": "\$80"},
{"name": "Watch", "price": "\$120"},
];

@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text("Amazon"),
backgroundColor: [Link],
),
body: [Link](
padding: [Link](10),
itemCount: [Link],
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 2,
crossAxisSpacing: 10,
mainAxisSpacing: 10,
),
itemBuilder: (context, i) {
return Card(
elevation: 5,
child: Column(
mainAxisAlignment: [Link],
children: [
Icon(Icons.shopping_bag,
size: 60,
color: [Link]),
SizedBox(height: 10),
Text(
items[i]["name"]!,
style: TextStyle(
fontWeight: [Link],
fontSize: 18,
),
),
Text(
items[i]["price"]!,
style: TextStyle(color: [Link]),
),
SizedBox(height: 10),
ElevatedButton(
style: [Link](
backgroundColor: [Link],
),
onPressed: () {},
child: Text("Buy"),
),
],
),
);
},
),
);
}
}

10th - Splash Screen App


import 'package:flutter/[Link]';
import 'dart:async';

void main() => runApp(MaterialApp(


debugShowCheckedModeBanner: false,
home: Splash(),
));

class Splash extends StatefulWidget {


@override
State<Splash> createState() => _SplashState();
}

class _SplashState extends State<Splash> {


double o = 0;

@override
void initState() {
[Link]();

Timer(Duration(seconds: 1), () => setState(() => o = 1));

Timer(
Duration(seconds: 3),
() => [Link](
context,
MaterialPageRoute(builder: (_) => Home()),
),
);
}

@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: [Link],
body: Center(
child: AnimatedOpacity(
opacity: o,
duration: Duration(seconds: 2),
child: FlutterLogo(size: 120),
),
),
);
}
}

class Home extends StatelessWidget {


@override
Widget build(BuildContext context) => Scaffold(
appBar: AppBar(title: Text("Home")),
body: Center(
child: Text(
"Welcome!",
style: TextStyle(fontSize: 25),
),
),
);
}

You might also like