华为HarmonyOS地图服务 1 -- 如何实现地图呈现?

如何使用地图组件MapComponent和MapComponentController呈现地图,效果如下图所示。

 

baf5bc37172aff0a177768e2a142604c.png

  • MapComponent是地图组件,用于在您的页面中放置地图。
  • MapComponentController是地图组件的主要功能入口类,用来操作地图,与地图有关的所有方法从此处接入。它所承载的工作包括:地图类型切换(如标准地图、空地图)、改变地图状态(中心点坐标和缩放级别)、添加点标记(Marker)、绘制几何图形(MapPolyline、MapPolygon、MapCircle)、监听各类事件等。

开发步骤

地图显示

    1. 导入Map Kit相关模块。

import { MapComponent, mapCommon, map } from '@kit.MapKit';
import { AsyncCallback } from '@kit.BasicServicesKit';

    2. 建地图初始化参数mapOption,设置地图中心点坐标及层级。

       通过callback回调的方式获取MapComponentController对象,用来操作地图。

       调用MapComponent组件,传入mapOption和callback参数,初始化地图。

@Entry@Componentstruct HuaweiMapDemo {private TAG = "HuaweiMapDemo";private mapOption?: mapCommon.MapOptions;private callback?: AsyncCallback<map.MapComponentController>;private mapController?: map.MapComponentController;aboutToAppear(): void {// 地图初始化参数,设置地图中心点坐标及层级this.mapOption = {position: {target: {latitude: 39.9,longitude: 116.4},zoom: 10}};// 地图初始化的回调this.callback = async (err, mapController) => {if (!err) {// 获取地图的控制器类,用来操作地图this.mapController = mapController;this.mapController.on("mapLoad", () => {console.info(this.TAG, `on-mapLoad`);});}};}// 页面每次显示时触发一次,包括路由过程、应用进入前台等场景,仅@Entry装饰的自定义组件生效onPageShow(): void {// 绘制地图页面的生命周期onPageShow,将地图切换到前台if (this.mapController !== undefined) {this.mapController.show();}}// 页面每次隐藏时触发一次,包括路由过程、应用进入后台等场景,仅@Entry装饰的自定义组件生效。onPageHide(): void {// 绘制地图页面的生命周期onPageHide,将地图切换到后台if (this.mapController !== undefined) {this.mapController.hide();}}build() {Stack() {// 调用MapComponent组件初始化地图MapComponent({ mapOptions: this.mapOption, mapCallback: this.callback                     }).width('100%').height('100%');}.height('100%')}}

 

    3. 运行您刚完成的工程就可以在您的APP中看到地图了,运行后的效果如下图所示。

       如果没有成功加载地图,请参见无法加载地图。

 

87da5a3558e607b72a6740555e8cb40a.png

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1542448.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

【小程序】微信小程序课程 -1 安装与配置

目录 1 微信小程序概述 1.1 什么是微信小程序 1.2 注册微信小程序账号 1.3 微信小程序配置 1.4 小程序开发流程 1.5 小程序成员 2、创建微信小程序项目 2.1 创建项目流程 2.2 创建项目 2.3 本地开发支持http 3 项目目录结构 3.1项目目录结构 3.1.1 目录介绍 3.1.2…

爬虫过程 | 蜘蛛程序爬取数据流程(初学者适用)

蜘蛛程序&#xff08;也称网络爬虫&#xff0c;是搜索引擎的重要组成部分&#xff09; 主要功能&#xff1a;遍历互联网&#xff0c;抓取网站信息并建立索引&#xff0c;便于用户在搜索引擎中检索到最新的网页内容工作原理&#xff1a;从初始网站页面的URL开始&#xff0c;发送…

Windows 配置docker和ubuntu系统

windos10 配置docke时&#xff0c;无意间发现wsl功能挺好用&#xff0c;而且是和docker 的linux容器连通的。 记录一下解决的几个问题 error during connect: Get http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.40/images/json: open //./pipe/docker_engine: The system cannot …

【Docker】基于docker compose部署artifactory-cpp-ce服务

基于docker compose部署artifactory-cpp-ce服务 1 环境准备2 必要文件创建与编写3 拉取镜像-创建容器并后台运行4 访问JFog Artifactory 服务 1 环境准备 docker 以及其插件docker compose &#xff0c;我使用的版本如下图所示&#xff1a; postgresql 的jdbc驱动, 我使用的是…

Origin2021中文版详尽安装教程、附安装包下载

各位小伙伴们呀~ 今天给大家讲解下origin2021如何安装&#xff0c;相信你按照教程来操作&#xff0c;一定可以安装成功的。 废话不多少&#xff0c;正文开始~ tips&#xff1a;提前推出所有杀毒软件可不相干的软件&#xff0c;以免影响安装。 origin2021中文版安装教程 1.下…

御风于海,向阳而生!第六届中国互联网牛友会圆满落幕

近日&#xff0c;第六届中国互联网牛友会近日在大理实力喜来登酒店圆满落幕&#xff0c;本次盛会吸引了超过五百名行业精英与创业者共襄盛举。大会以“御风于海&#xff0c;向阳而生”为主题&#xff0c;聚焦于互联网出海、AI大模型、新媒体及WEB3等前沿科技与趋势&#xff0c;…

MySQL数据库select语句详细用法三(子查询及其select练习)

SELECT *FROM student2 WHERE age > (SELECT age FROM student2 WHERE NAME 欧阳丹丹) 首先解释一下括号中的代码&#xff0c;意思是在查询student2中的name为欧阳丹丹的人的名字&#xff0c;然后解释一下整个语句的意思&#xff1a;在括号中查询出来的字段中再次进行查询…

VUE3学习---【一】【从零开始的VUE学习】

目录​​​​​​​ 什么是Vue 渐进式框架 创建一个Vue应用 什么是Vue应用 使用Vue应用 根组件 挂载应用 模板语法 文本插值 原始HTML Attribute绑定 简写 同名简写 布尔型Attribute 动态绑定多个值 使用JavaScript表达式 仅支持表达式 指令 Directives 指令…

QString 构建SQL语句可以往数据库中添加“\n“字符串

网上找了很多案例关于怎么样能在Mysql数据库中插入带\n的字符串&#xff0c;如图&#xff1a; 本以为很容易的一件事&#xff0c;没想到思考了半天&#xff0c;在这里记录一下&#xff0c;以为\n是转义字符的原因&#xff0c;所以并不是我想的那么简单。网上有用R&#xff08;“…

【算法业务】互联网风控业务中的拒绝推断场景算法应用分享(涉及半监督算法、异常检测、变分自编码、样本权重自适应调整、迁移学习等)

1. 业务目标和任务描述 该项目是很早期的一个工作&#xff0c;属于互联网信贷风控场景&#xff0c;研究并应用信贷中的拒绝推断任务&#xff0c;处理方式也许对于目前的一些业务还有参考意义&#xff0c;因此这里做下分享。拒绝推断是指在信贷业务中&#xff0c;利用已知的接受…

《2024 年全球人工智能趋势报告》:GPU、数据架构依然是巨大挑战

导语&#xff1a;对于众多行业用户而言&#xff0c;了解人工智能如何改变行业、如何利用人工智能保持领先地位&#xff0c;已成为一道时代的必答题。全球著名调研机构WEKA近日正式发布《2024 年全球人工智能趋势报告》&#xff0c;该报告基于全球1500名人工智能决策者的深度调查…

【项目】基于 Huffman 算法实现文件压缩

摘要&#xff1a;记录通过学习Huffman算法自主实现简单的文件压缩程序的过程。 什么是文件压缩 在古诗词中&#xff0c;这种信息的高度浓缩体现得淋漓尽致。例如王维的《使至塞上》中的名句 “ 大漠孤烟直&#xff0c;长河落日圆 ”。仅仅十个字&#xff0c;却描绘出了一幅极为…

MoveIt控制机械臂的运动实现——机器人抓取系统基础系列(二)

文章目录 概要1 用户接口和代码案例2 不同的规划类型2.1 关节空间规划2.2 工作空间规划2.3 笛卡尔空间规划 3 MoveIt运行实操4 相关资料推荐小结 概要 MoveIt为开发者提供了针对机械臂的集成化开发平台&#xff0c;由一系列操作相关的功能包组成&#xff0c;包括运动规划、操作…

从 Affine Particle-In-Cell (APIC) 到 Material Point Method (MPM 物质点法)

APIC与MPM Particle-In-Cell (PIC)Affine Particle-In-Cell (APIC)Material Point Method (MPM)关于边界投影等额外操作 Material Point Method (MPM 物质点法)是一种混合欧拉-拉格朗日视角物理仿真方法。 欧拉视角即网格视角&#xff0c;将空间划分为网格&#xff0c;通过表示…

从一到无穷大 #35 Velox Parquet Reader 能力边界

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 本作品 (李兆龙 博文, 由 李兆龙 创作)&#xff0c;由 李兆龙 确认&#xff0c;转载请注明版权。 文章目录 引言源码分析功能描述功能展望 引言 InfluxDB IOX这样完全不使用索引&#xff0c;只…

JavaEE: 深入探索TCP网络编程的奇妙世界(四)

文章目录 TCP核心机制TCP核心机制四: 滑动窗口为啥要使用滑动窗口?滑动窗口介绍滑动窗口出现丢包咋办? TCP核心机制五: 流量控制 TCP核心机制 书接上文~ TCP核心机制四: 滑动窗口 为啥要使用滑动窗口? 之前我们讨论了确认应答策略,对每一个发送的数据段,都要给一个ACK确…

centos7下openssh升级方法(编译安装)

注意&#xff1a; 首先打开两个或以上的shell连接&#xff0c;因为在升级过程中如果升级失败会导致不发新建shell连接&#xff1b;升级后使用xshell6,7连接&#xff0c;openssh版本对应修改&#xff0c;下载地址&#xff1a; https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/por…

Servlet day2(概念理解)

Servlet体系结构 Servlet相关配置 HTTP协议内容

leetcode746. 使用最小花费爬楼梯,动态规划

leetcode746. 使用最小花费爬楼梯 给你一个整数数组 cost &#xff0c;其中 cost[i] 是从楼梯第 i 个台阶向上爬需要支付的费用。一旦你支付此费用&#xff0c;即可选择向上爬一个或者两个台阶。 你可以选择从下标为 0 或下标为 1 的台阶开始爬楼梯。 请你计算并返回达到楼梯顶…

计算机毕业设计 基于SpringBoot的小区运动中心预约管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍&#xff1a;✌从事软件开发10年之余&#xff0c;专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精…