了解更多请访问:Harmonyos技术社区https://harmonyos.51cto.com/#zz大家好!欢迎来到鸿蒙区。我是冬雨很荣幸成为HarmonyOS系统课程的开发者。欢迎大家观看我最新的免费视频教程《精讲鸿蒙应用程序开发》,并提出宝贵意见:https://edu.51cto.com/course/26138.html今天给大家介绍一款自己开发的鸿蒙地图控件应用:TinyMap.我们先来看看效果。因为论坛上传的gif动图尺寸闲置,实际效果比这个好,平移的时候如丝般顺滑。该控件可以放置谷歌和高德的底图,可以添加自定义底图元素(带图片的地理位置元素)。研究和学习。可以使用高德地图和谷歌地图作为地理底图,可选择卫星影像和矢量底图数据。可以添加自定义底图元素(Element)部署教程:将tinymapModule(即HAP)移动到需要的项目中,在需要调用的Module(HAP)中导入该项目。在build.gradle中插入如下代码:applyplugin:'com.huawei.ohos.hap'...dependencies{...implementationproject(':tinymap')}放大和缩小(此功能将在以后添加)。zoomIn()方法:缩小地图zoomOut()方法:放大地图refreshMap()方法:刷新地图setMapSource(TinyMap.MapSourcemapSource)方法:切换底图数据源。目前有5种底图数据源:MapSource.GAODE_ROAD:高德道路数据MapSource.GAODE_VECTOR:高德矢量数据MapSource.GAODE_SATELLITE:高德卫星数据MapSource.GOOGLE_VECTOR:谷歌矢量数据MapSource.GOOGLE_SATELLITE:谷歌卫星数据addElement(floatx,floaty,intresource)方法:添加底图元素(目前只支持墨卡托投影坐标,以后会添加经纬度坐标方法)。例如:addElement(12956517.35f,4864667.87f,ResourceTable.Media_dot)这个图是怎么实现的?我是通过Component组件的Canvas画布绘制的。具体可以看代码,有注释等等,总共不超过1000行。开源地址:https://gitee.com/dongyu1009/tiny-map-for-harmony-os如果大家有兴趣,后面会为大家介绍具体的实现方法。哈哈。?版权归作者和HarmonyOS技术社区共同所有。如需转载请注明出处,否则追究责任。51cto.com/#zz
