import 'package:flutter/material.dart';\nimport 'package:dropdownfield/dropdownfield.dart';\nimport 'package:http/http.dart' as http;\n\nclass Formwidget extends StatefulWidget {\n\n @override\n _FormwidgetState createState() => _FormwidgetState();\n}\n\nclass _FormwidgetState extends State<Formwidget> {\n\n\n Map locationDataBangalore;\n fetchlocationData()async{\n http.Response locationData = await http.get("http://192.168.0.102:5000/get_location_names");\n setState(() {\n locationDataBangalore = jsonDecode(locationData.body);\n });\n print(locationDataBangalore['locations']);\n }\n @override\n void initState() {\n fetchlocationData();\n super.initState();\n }\n\n @override\n Widget build(BuildContext context) {\n return locationDataBangalore == null ? Center(child: CircularProgressIndicator(),) :Container(\n child: Column(\n children: <Widget>[\n DropDownField(\n controller: locationController,\n hintText: "Select Location",\n enabled: true,\n items: locationDataBangalore["locations"],\n ),\n ],\n ),\n );\n }\n}\n\nfinal locationController = TextEditingController();\nRun Code Online (Sandbox Code Playgroud)\n来自 API“http://192.168.0.102:5000/get_location_names”的 …
GetPhotoUrlStream 提供存储在我的 Cloud Firebase FireStore 中的个人资料照片 (data['profilePhoto']) 的 Url 流。然后被网络图像用来显示个人资料照片(圆形头像)
class GetUserPhotoUrlStream extends StatelessWidget {
final String documentId; // This is your User UID
GetUserPhotoUrlStream(this.documentId);
@override
Widget build(BuildContext context) {
DocumentReference users = FirebaseFirestore.instance.collection('users').doc(documentId);
return StreamBuilder<DocumentSnapshot>(
stream: users.snapshots(),
builder: (BuildContext context, AsyncSnapshot<DocumentSnapshot> snapshot) {
if (snapshot.hasError) {
return Image.asset('assets/images/NouserImage.png');
}
if (snapshot.connectionState == ConnectionState.waiting) {
return CircularProgressIndicator();
}
Map<String, dynamic> data = snapshot.data.data();
return CircleAvatar(
maxRadius: 80,
backgroundColor: Colors.grey,
child: ClipOval(child: FadeInImage(placeholder: AssetImage('assets/images/NouserImage.png'),image: NetworkImage("${data['profilePhoto']}"),),),
);
},
);
}
}
Run Code Online (Sandbox Code Playgroud)
removeUserPhotoUrl …