-
Notifications
You must be signed in to change notification settings - Fork 0
/
home_view.dart
84 lines (74 loc) · 2.46 KB
/
home_view.dart
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
import 'package:crypto_wallet/net/apimethods.dart';
import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:crypto_wallet/ui/ux/AddView.dart';
import 'package:firebase_auth/firebase_auth.dart';
import 'package:flutter/material.dart';
class HomeView extends StatefulWidget {
HomeView({Key key}) : super(key: key);
@override
_HomeViewState createState() => _HomeViewState();
}
class _HomeViewState extends State<HomeView> {
double bitcoin = 0.0;
double tether = 0.0;
double ethereum = 0.0;
@override
void initState() {
getValues();
}
getValues()async{
bitcoin = await getPrice("bitcoin");
tether = await getPrice("tether");
ethereum = await getPrice("ethereum");
setState(() {
});
}
@override
Widget build(BuildContext context) {
getValues(String id , double amount)async{
if(id=="bitcoin")
{
return bitcoin*amount;
}
else if (id=="tether")
{
return tether*amount;
}else{
return ethereum*amount;
}
}
return Scaffold(
body:Container(
width: MediaQuery.of(context).size.width,
height: MediaQuery.of(context).size.height,
decoration: BoxDecoration(color: Colors.white),
child: Center(child: StreamBuilder(
stream: FirebaseFirestore.instance.collection('Users').doc(FirebaseAuth.instance.currentUser.uid).collection('Coins').snapshots(),
// ignore: missing_return
builder: (BuildContext context, AsyncSnapshot<QuerySnapshot> snapshot) {
if(!snapshot.hasData){
return Center(child: CircularProgressIndicator(),);
}
return ListView(
children:snapshot.data.docs.map((document){
return Container(
child:Row(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: [
Text("Coin Name: ${document.id}"),Text("Price: ${getValues(document.id, document.data()['Amount'])}")
],)
);
}).toList()
);
},
),)
),
floatingActionButton: FloatingActionButton(onPressed: (){
Navigator.push(context, MaterialPageRoute(builder: (context)=> AddView(),),);
},
child: Icon(Icons.add,color: Colors.white,),
backgroundColor: Colors.blue,
),
);
}
}