无法使用 Animarker 清除地图标记 求解:未为类型"完成器"定义方法'clearMarkers'?



你好,我正在使用Animarker包(https://pub.dev/packages/flutter_animarker),我不能使用它清除地图标记,这是一个大问题。

我以每次添加标记结束,carousel列表被用户滚动,而不是一个接一个地显示标记。

我必须这样设置控制器:

late final Completer<GoogleMapController> _mapController = Completer();

为了在mapId中使用future所需的Animaker元素

Animarker(
mapId: _mapController.future.then<int>((value) => value.mapId),
rippleRadius: 0.6,  //[0,1.0] range, how big is the circle
rippleColor: Colors.grey, // Color of fade ripple circle
rippleDuration: Duration(milliseconds: 2500),
markers:_storeMarkers.toSet(),
runExpressAfter: 1, 

我已经尝试解决这个问题,但没有成功删除标记在google_maps_flutter

我的调用是,当这个函数被调用时,它会清除地图,然后添加新的标记

void _carouselCallback(Product product)  {
var fe= product.store?.id;
// _mapController.clearMarkers();
//_storeMarkers.remove(_storeMarkers.firstWhere((Marker marker) => marker.markerId.value == '3'));
_storeMarkers.clear();
final marker=    RippleMarker(
markerId: MarkerId('${product.store?.id}'),
alpha: 1,
icon: _storePin ?? BitmapDescriptor.defaultMarker,
position: LatLng(product.store?.lat ?? 0, product.store?.long ?? 0),
ripple: false,
onTap: () {
if (product.store != null) {
_carouselModePinCallback(product.store);
}
},
);
_storeMarkers.add(marker);
_moveToStore(product.store);
setState(() {});
}

_storeMarker是一个集合

有人能帮忙吗?谢谢你

试着用这个:

markers[myMarkerId] = Marker(markerId: myMarkerId, visible: false);

,问题就解决了。

最新更新