rebuildMarkers method
Implementation
Future<void> rebuildMarkers(int index) async {
if(widget.items.length == 0) return;
int current = widget.items[index].id;
Set<Marker> _markers = Set<Marker>();
widget.items.forEach((item) {
_markers.add(
Marker(
markerId: MarkerId(item.id.toString()),
position: LatLng(item.latitude, item.longitude),
onTap: () {
int tappedIndex = widget.items.indexWhere((element) => element.id == item.id);
pageController.animateToPage(
tappedIndex,
duration: Duration(milliseconds: 300),
curve: Curves.bounceInOut,
);
_pageChanged(tappedIndex);
},
icon: BitmapDescriptor.defaultMarkerWithHue(item.id == current ? BitmapDescriptor.hueGreen : BitmapDescriptor.hueRed),
// icon: item.id == current ? BitmapDescriptor.fromBytes(widget.markerIconSelected!) : BitmapDescriptor.fromBytes(widget.markerIcon!),
),
);
});
setState(() {
markers = _markers;
});
// selectedMarker.value = current;
selectedMarker.value = current;
// selectedMarker.notifyListeners();
}