首页 > 解决方案 > 我读到 clearMarkers() 因谷歌地图抖动而被贬低

问题描述

我一直在寻找一种方法来清除我颤动的谷歌地图上的所有标记,我在某个地方读到了 mapcontroller.clearMarkers() ;被贬低了,当我现在使用它时,它说谷歌地图控制器没有定义该功能,所以有什么建议可以用来清除我地图上的所有标记吗?谢谢,麻烦您了

标签: androidflutterdart

解决方案


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

 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 = {};
}

推荐阅读