Skip to content
This repository has been archived by the owner on Sep 28, 2021. It is now read-only.

手势交互

小山 edited this page Oct 19, 2020 · 2 revisions

手势交互

地图 SDK 提供了多种手势供 App 端用户与地图之间进行交互,如缩放、旋转、滑动、倾斜。这些手势默认开启,如果想要关闭某些手势,可以通过 AmapController 类提供的接口来控制手势的开关。

手势方法说明

以下是控制手势生效与否的方法:

名称 调用方法
缩放手势 AmapController.setZoomGesturesEnabled(bool)
滑动手势 AmapController.setScrollGesturesEnabled(bool)
旋转手势 AmapController.setRotateGesturesEnabled(bool)
倾斜手势 AmapController.setTiltGesturesEnabled(bool)
所有手势 AmapController.setAllGesturesEnabled(bool)

以下是检测手势是否生效的方法(TODO):

名称 调用方法
缩放手势 AmapController.isZoomGesturesEnabled()
滑动手势 AmapController.isScrollGesturesEnabled()
旋转手势 AmapController.isRotateGesturesEnabled()
倾斜手势 AmapController.isTiltGesturesEnabled()

缩放手势

缩放手势可改变地图的缩放级别,地图响应的手势如下:

  • 双击地图可以使缩放级别增加1 (放大)
  • 两个手指捏/拉伸 也可以禁用或启用缩放手势。禁用缩放手势不会影响用户使用地图上的缩放控制按钮。以下是控制缩放手势开启关闭的代码:
await controller.setZoomGesturesEnabled(true);

滑动手势

您可以用手指拖动地图四处滚动(平移)或用手指滑动地图(动画效果),也可以禁用或开启平移(滑动)手势。
以下介绍控制缩放手势开启关闭的方法,示例代码如下:

await controller.isScrollGesturesEnabled(true);

旋转手势

您可以用两个手指在地图上转动,可以旋转3D矢量地图,也可以禁用旋转手势。
以下介绍控制旋转手势开启关闭的方法,示例代码如下:

await controller.setRotateGesturesEnabled(true);

倾斜手势

用户可以在地图上放置两个手指,移动它们一起向下或向上去增加或减小倾斜角,也可以禁用倾斜手势。
以下是控制倾斜手势开启关闭的代码:

await controller.setTiltGesturesEnabled(true);

指定屏幕中心点的手势操作

在对地图进行手势操作时(滑动手势除外),可以指定屏幕中心点后执行相应手势。
指定屏幕中心点的方法如下,在AmapController类中:

// TODO

开启以中心点进行手势操作的方法:

await controller.setZoomByCenter(true);
Clone this wiki locally