我不希望相机在单击标记时移动



我使用的是[google_map_flutter]包。

单击标记时,我不希望屏幕移动到标记的中心。有办法吗?

尝试这个

尝试设置

consumeTapEvents=false

作为Marker构造函数的参数。

Marker marker =Marker(consumeTapEvents=false)

好吧,在你的GoogleMap上,你可以用一些默认目标设置一个initialCameraPosition,比如:

initialCameraPosition: CameraPosition(
zoom: 13,
target: LatLng(
defaultLat,
defaultLng,
),
),

然后你可以从onMapCreated获得你的地图控制器,比如:

late GoogleMapController _mapController;
void onMapCreated(GoogleMapController googleMapsController) async {
_mapController = googleMapsController;
//rest of your code...
}

并在从Marker到"的onTap((方法上使用它;锁定";保持相机与默认目标的位置。类似:

Marker(
markerId: const MarkerId('id'),
onTap: () {
_mapController.animateCamera(
CameraUpdate.newCameraPosition(
CameraPosition(
zoom: 13,
target: LatLng(
defaultLat,
defaultLng,
),
),
),
);
},
);

这并不理想,因为你可能仍然会注意到相机有点试图移动,但它保持在锁定位置。

最新更新