当前位置: 首页 > article >正文

华为HarmonyOS地图服务 5 - 利用UI控件和手势进行地图交互

场景介绍

本章节将向您介绍如何使用地图的手势。

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

 

a1eb9861c91b9f29813042ee83322408.png

接口说明

以下是地图的控件和手势相关接口,该功能有2种实现方式:

  • 地图初始化时,可在初始化参数mapOptions中设置是否启用手势功能,详细讲解见显示地图章节。
  • 通过调用MapComponentController提供的set方法实现相关手势的开启或关闭。

接口名

描述

setZoomControlsEnabled(enabled: boolean): void

设置是否启用缩放控制器。

默认值为true。

setMyLocationEnabled(myLocationEnabled: boolean): void

设置是否启用我的位置图层。

默认值为true。

setMyLocationControlsEnabled(enabled: boolean): void

设置是否启用我的位置按钮。

默认值为true。

setZoomGesturesEnabled(enabled: boolean): void

设置是否启用缩放手势。

默认值为true。

setScrollGesturesEnabled(enabled: boolean): void

设置是否启用滚动手势。

默认值为true。

setRotateGesturesEnabled(enabled: boolean): void

设置是否启用旋转手势。

默认值为true。

setTiltGesturesEnabled(enabled: boolean): void

设置是否启用倾斜手势。

默认值为true。

setScaleControlsEnabled(enabled: boolean): void

设置是否启用比例尺。

默认值为true。

setScalePosition(point: mapCommon.MapPoint): void

设置比例尺控件的位置。

默认值为true。

setAllGesturesEnabled(enabled: boolean): void

设置手势是否可用。

默认值为true。

setCompassControlsEnabled(enabled: boolean): void

设置是否启用指南针。

默认值为true。

开发步骤

mapController对象在初始化地图时获取,初始化地图功能在显示地图章节中有详细讲解。

地图手势控制

您可以通过mapController对象来启用或禁止相关的地图手势。

缩放手势:

用户可以通过用双指张合,实现放大缩小地图。

this.mapController.setZoomGesturesEnabled(true);

滚动平移手势:

用户可以通过用手指拖动地图来进行移动。

this.mapController.setScrollGesturesEnabled(true);

旋转手势:

用户可以通过将两个手指放在地图上旋转来旋转地图。

this.mapController.setRotateGesturesEnabled(true);

倾斜手势:

用户可以通过将两个手指放在地图上下滑动来倾斜地图。

this.mapController.setTiltGesturesEnabled(true);

 

启用或禁止所有手势:

通过调用setAllGesturesEnabled方法,可启用或禁止所有手势。

// 禁止所有手势
this.mapController.setAllGesturesEnabled(false);

 

 


http://www.kler.cn/a/320008.html

相关文章:

  • libcurl编译配置和使用
  • ubuntu下安装编译cmake,grpc与protobuf
  • OpenCV实现Kuwahara滤波
  • 【微服务justsoso-cloud系列】目录
  • Mysql--运维篇--备份和恢复(逻辑备份,mysqldump,物理备份,热备份,温备份,冷备份,二进制文件备份和恢复等)
  • Linux网络_套接字_UDP网络_TCP网络
  • Go语言设计的一些优点及缺陷
  • 语音音频(wav)声纹识别-技术实现-python
  • Debian与Ubuntu:深入解读两大Linux发行版的历史与联系
  • react crash course 2024(5) useState钩子
  • mac终端打开报complete 13 command not found compdef异常处理以及命令补全功能实现
  • 详细分析SpringMvc中HandlerInterceptor拦截器的基本知识(附Demo)
  • java知识:什么是GC?GC调优思路又有哪些
  • C++深入学习string类成员函数(1):默认与迭代
  • 聚观早报 | 小米新车规划曝光;北京汽车官宣更换标志
  • Django后台管理复杂模型
  • 【JVM】类加载机制
  • leetcode-189:轮转数组
  • 阿尔兹海默症患者出行随身助手设计_kaic
  • 【洛谷】P10417 [蓝桥杯 2023 国 A] 第 K 小的和 的题解
  • 免费制作证件照的小程序源码
  • 机器学习EDA探查工具Pandas profiling
  • nvm以及npm源配置
  • 注意力机制篇 | YOLOv8改进之在C2f模块引入EffectiveSE注意力模块 | 基于SE注意力
  • 聚观早报 | 豆包视频生成大模型发布;华为纯血鸿蒙将开启公测
  • 基于SpringBoot+Vue的考研百科网站系统