手势交互 最后更新时间: 2024年11月21日
地图SDK提供了多种手势供App端用户与地图之间进行交互,如缩放、旋转、滑动、倾斜。这些手势默认开启,如果想要关闭某些手势,可以通过UiSetting类提供的接口来控制手势的开关。
手势方法说明
以下是控制手势生效与否的方法:
名称 | 调用方法 |
---|---|
缩放手势 | UiSettings.setZoomGesturesEnabled(boolean) |
滑动手势 | UiSettings.setScrollGesturesEnabled(boolean) |
旋转手势 | UiSettings.setRotateGesturesEnabled(boolean) |
倾斜手势 | UiSettings.setTiltGesturesEnabled(boolean) |
所有手势 | UiSettings.setAllGesturesEnabled (boolean) |
以下是检测手势是否生效的方法:
名称 | 调用方法 |
---|---|
缩放手势 | UiSettings.isZoomGesturesEnabled() |
滑动手势 | UiSettings.isScrollGesturesEnabled() |
旋转手势 | UiSettings.isRotateGesturesEnabled() |
倾斜手势 | UiSettings.isTiltGesturesEnabled() |
缩放手势
缩放手势可改变地图的缩放级别,地图响应的手势如下:
- 双击地图可以使缩放级别增加1 (放大)
- 两个手指捏/拉伸
也可以禁用或启用缩放手势。禁用缩放手势不会影响用户使用地图上的缩放控制按钮。以下是控制缩放手势开启关闭的代码:
UiSettings.setZoomGesturesEnabled(boolean);
滑动手势
您可以用手指拖动地图四处滚动(平移)或用手指滑动地图(动画效果),也可以禁用或开启平移(滑动)手势。
以下介绍控制缩放手势开启关闭的方法,示例代码如下:
UiSettings.setScrollGesturesEnabled(boolean);
旋转手势
您可以用两个手指在地图上转动,可以旋转3D矢量地图,也可以禁用旋转手势。
以下介绍控制旋转手势开启关闭的方法,示例代码如下:
UiSettings.setRotateGesturesEnabled(boolean);
倾斜手势
用户可以在地图上放置两个手指,移动它们一起向下或向上去增加或减小倾斜角,也可以禁用倾斜手势。
以下是控制倾斜手势开启关闭的代码:
UiSettings.setTiltGesturesEnabled(boolean);
指定屏幕中心点的手势操作
在对地图进行手势操作时(滑动手势除外),可以指定屏幕中心点后执行相应手势。
指定屏幕中心点的方法如下,在AMap类中:
setPointToCenter(int x, int y);//x、y均为屏幕坐标,屏幕左上角为坐标原点,即(0,0)点。
开启以中心点进行手势操作的方法:
aMap.getUiSettings().setGestureScaleByMapCenter(true);
注意:轻量版不支持“指定屏幕中心点的手势操作” 。