Прежде чем я хочу предположить, что я был полным новичком в трепете.
Мой проект - это зарядная станция, используя API Google Maps, на карте есть 2 различных вида маркеров, 1 для зарядной станции, а другой для движущегося автомобиля, ранее у меня были зарядные станции индивидуально отображены в таком манере, а затем вызывали их в аскировании.
Widget build(BuildContext context) {
return Scaffold(
body: GoogleMap(
style: _themeformap,
mapType: MapType.normal,
initialCameraPosition: _kGooglePlex,
onMapCreated: (GoogleMapController controller) {
_controller.complete(controller);
},
markers: //{
// Marker(
// markerId: const MarkerId(''),
// icon: iconStation,
// position: ev01,
// ),
// Marker(
// markerId: const MarkerId(''),
// icon: iconStation,
// position: ev02,
// ),
// Marker(
// markerId: const MarkerId(''),
// icon: iconStation,
// position: ev03,
// ),
// Marker(
// markerId: const MarkerId(''),
// icon: iconStation,
// position: ev04,
// ),
// Marker(
// markerId: const MarkerId(''),
// icon: iconStation,
// position: ev05,
// ),
//},
)
< /code>
Первоначально они не были комментариями, но после учебного пособия, чтобы автомобильный маркер двигаться с изменением местоположения, я должен добавить, что я должен добавить рядом с этим < /p>
markers: //{
usersCarArr.values.toSet(),
< /code>
с функцией, потому что это что -то вроде этого < /p>
void updateOtherCarLocation(Map obj) {
usersCarArr[obj["uuid"].toString()] = Marker(
markerId: MarkerId(obj["uuid"].toString()),
position: LatLng(
double.tryParse(obj["lat"].toString()) ?? 0.0,
double.tryParse(obj["long"].toString()) ?? 0.0,
),
icon: iconCar,
rotation: double.tryParse(obj["degree"].toString()) ?? 0.0,
anchor: const Offset(0.5, 0.5),
);
if (mounted) {
setState(() {});
}
}
void apiCarJoin() {
ServiceCall.post(
{
"uuid": ServiceCall.userUUID,
"lat": currentPosition.latitude.toString(),
"long": currentPosition.longitude.toString(),
"degree": LocationManager.shared.carDegree.toString(),
"socket_id": SocketManager.shared.socket?.id ?? "",
},
SVKey.svCarJoin,
(responseObj) async {
if (responseObj[KKey.status] == "1") {
(responseObj[KKey.payload] as Map? ?? {}).forEach((key, value) {
usersCarArr[key.toString()] = Marker(
markerId: MarkerId(key.toString()),
position: LatLng(
double.tryParse(value["lat"].toString()) ?? 0.0,
double.tryParse(value["long"].toString()) ?? 0.0,
),
icon: iconCar,
rotation: double.tryParse(value["degree"].toString()) ?? 0.0,
anchor: const Offset(0.5, 0.5),
);
});
if (mounted) {
setState(() {});
}
} else {
debugPrint(responseObj[KKey.message] as String? ?? MSG.fail);
}
},
(error) async {
debugPrint(error.toString());
},
);
}
И независимо от того, что я не могу в течение жизни, чтобы я мог сосуществовать их обоих, это должно быть одно или другое, но я абсолютно должен, чтобы они оба появились вместе
Прежде чем я хочу предположить, что я был полным новичком в трепете. Мой проект - это зарядная станция, используя API Google Maps, на карте есть 2 различных вида маркеров, 1 для зарядной станции, а другой для движущегося автомобиля, ранее у меня были зарядные станции индивидуально отображены в таком манере, а затем вызывали их в аскировании.[code]Widget build(BuildContext context) { return Scaffold( body: GoogleMap( style: _themeformap, mapType: MapType.normal, initialCameraPosition: _kGooglePlex, onMapCreated: (GoogleMapController controller) { _controller.complete(controller); },
) < /code> Первоначально они не были комментариями, но после учебного пособия, чтобы автомобильный маркер двигаться с изменением местоположения, я должен добавить, что я должен добавить рядом с этим < /p> markers: //{ usersCarArr.values.toSet(), < /code> с функцией, потому что это что -то вроде этого < /p> void updateOtherCarLocation(Map obj) { usersCarArr[obj["uuid"].toString()] = Marker( markerId: MarkerId(obj["uuid"].toString()), position: LatLng( double.tryParse(obj["lat"].toString()) ?? 0.0, double.tryParse(obj["long"].toString()) ?? 0.0, ), icon: iconCar, rotation: double.tryParse(obj["degree"].toString()) ?? 0.0, anchor: const Offset(0.5, 0.5), );
if (mounted) { setState(() {}); } } else { debugPrint(responseObj[KKey.message] as String? ?? MSG.fail); } }, (error) async { debugPrint(error.toString()); }, ); } [/code] И независимо от того, что я не могу в течение жизни, чтобы я мог сосуществовать их обоих, это должно быть одно или другое, но я абсолютно должен, чтобы они оба появились вместе