提问者:小点点

我读到clearMarkers()对于flutter Google maps来说很不受欢迎


我一直在寻找清除我的flutter Google地图上所有标记的方法,我在某处读到MapController.clearMarkers(); 当我现在使用它的时候,它说谷歌地图控制器没有定义这个功能,所以有什么建议可以用来清除我地图上的所有标记吗? 请并且谢谢你


共1个答案

匿名用户

设置要在地图中使用的一组标记

 Set<Marker> _markers = {
    Marker(
      markerId: MarkerId(LatLng(45.521563, -122.677433).toString()),
      position: LatLng(45.521563, -122.677433),
      infoWindow: InfoWindow(
        title: 'Tommy\'s Home',
        snippet: 'Very cool place',
      ),
      icon: BitmapDescriptor.defaultMarker,
    )
};

地图内部:

GoogleMap(
  onMapCreated: _onMapCreated,
  initialCameraPosition: CameraPosition(
     target: _center,
     zoom: 11.0,
  ),
  mapType: MapType.hybrid,
  markers: _markers,
),

然后将其设置为空就可以了:

setState(){
   _markers = {};
}