调用方法交互 最后更新时间: 2022年04月17日
方法交互的概念是从程序角度出发提出的。地图SDK提供了很多与地图交互的接口方法,例如:改变地图显示的区域(即改变地图中心点)、改变地图的缩放级别、限制地图的显示范围等。
地图视角交互的核心方法均依赖AMap类提供的这两个方法,区别在于所构造的CameraUpdate类对象参数不一样,得到的效果也不同。
在本文最后介绍了如何改变地图默认显示区域,需要注意的是改变地图默认显示区域不依赖以下两个方法。
带有地图视角移动动画的方法:
//AMap类中提供,带有移动过程的动画
animateCamera(CameraUpdate cameraupdate);
不带地图视角移动动画的方法:
//AMap类中提供,直接移动过去,不带移动过程动画
moveCamera(CameraUpdate cameraupdate);
改变地图的中心点
如果想改变地图中心点,可以通过如下方法构造改变地图中心点的CameraUpdate参数:
//参数依次是:视角调整区域的中心点坐标、希望调整到的缩放级别、俯仰角0°~45°(垂直与地图时为0)、偏航角 0~360° (正北方为0)
CameraUpdate mCameraUpdate = CameraUpdateFactory.newCameraPosition(new CameraPosition(new LatLng(39.977290,116.337000),18,30,0));
地图的缩放级别一共分为17级,从3到19。数字越大,展示的图面信息越精细。
名称 |
参数说明 |
调用方法 |
---|---|---|
ZoomTo |
缩放地图到指定的缩放级别 |
AMap.moveCamera(CameraUpdateFactory.zoomTo(17)) |
ZoomIn |
缩放地图到当前缩放级别的上一级 |
AMap.moveCamera(CameraUpdateFactory.zoomIn()) |
限制地图的显示范围
手机屏幕仅显示设定的地图范围,例如:希望设置仅显示北京市区地图,可使用此功能。
调用示例如下:
LatLng southwestLatLng = new LatLng(33.789925, 104.838326);
LatLng northeastLatLng = new LatLng(38.740688, 114.647472);
LatLngBounds latLngBounds = new LatLngBounds(southwestLatLng, northeastLatLng);
aMap.setMapStatusLimits(latLngBounds);