我有数据存储在实时数据库上的Firebase.我想显示这些标记在我的Map.我使用Flutter,google_maps_flutter包.我必须显示这些纬度和经度坐标作为标记的位置.
Firebase RTB
{
"Rooms": {
"-NlRyq2YpbOVTbI2G4nb": {
"latitude": "12.901715224349228",
"longitude": "74.98462345451117",
"roomLocation": "new",
"roomName": "new"
},
"-NlRz4ZDgp5IUOLA9J4w": {
"latitude": "12.899229153743564",
"longitude": "74.9857271835208",
"roomLocation": "right",
"roomName": "right"
}
}
}
字符串
我哪里做错了?
final databaseReference = FirebaseDatabase.instance.ref().child('Rooms');
@override
void initState() {
super.initState();
_fetchMarkers();
}
void _fetchMarkers() {
databaseReference.child('Rooms').once().then((DataSnapshot snapshot) {
Map<dynamic, dynamic> values = snapshot.value as Map<dynamic, dynamic>;
values.forEach((key, values) {
markers.add(Marker(
markerId: MarkerId(key),
position: LatLng(
double.parse(values['latitude'].toString()),
double.parse(values['longitude'].toString()),
),
infoWindow: InfoWindow(
title: values['roomName'].toString(),
snippet: values['roomLocation'].toString(),
),
));
});
setState(() {});
});
}
型
小部件构建
GoogleMap(
onMapCreated: onMapCreated,
initialCameraPosition: _kGooglePlex,
myLocationButtonEnabled: true,
myLocationEnabled: true,
// markers: Set.from(_markers),
markers: markers,
),
型
我得到这个错误
无法将参数类型“FunctionFunction(DataSnapshot)”分配给参数类型“FutureOr Function(DatabaseEvent)”。
我试图让多个标记显示在Map上。
1条答案
按热度按时间dzhpxtsq1#
解决了
字符串