百度地图 Android SDK - 标注(Marker)的基本使用
发布日期:2021-08-30 19:27:47 浏览次数:12 分类:技术文章

本文共 2290 字,大约阅读时间需要 7 分钟。

标注(Marker)是开发人员最常使用的地图覆盖物志一。今天就来向大家介绍一些标注(Marker)的最基本用法!

实现目标:

1、构建基础地图页面;

2、在地图的中心点处加入 Marker;

3、实现 Marker 的点击事件响应;

4、实现 Marker 的加入和灵活删除;

为了实现以上目标。我们会分成下面若干步骤来进行。

第一步、创建project,导入百度地图 Android SDK。

详细创建project的方式(略)。本演示样例主要是为了实现地图及相关的覆盖物功能,因此这里我仅仅使用 SDK 开发资源下载平台所提供的【基础地图】功能模块就可以。

对应下载地址为:http://lbsyun.baidu.com/sdk/download

勾选如图所看到的:

选择完毕后。点击开发包下载,将所下载开发包正确导入开发project。

第二步、申请开发人员秘钥;

project创建完毕后。到 API 控制台。申请对应的开发秘钥。为详细开发工作准备。

详细申请方式及注意事项,请參考:http://blog.csdn.net/callmesen/article/details/39523767  此处不再赘述。

第三步、改动 AndroidManifest 文件。加入开发秘钥和所需权限;

在 AndroidManifest 文件里。加入开发秘钥和所需权限。

加入开发秘钥方式例如以下:

 

" />

注意在 application 里面。

加入所需权限例如以下:

第四步、创建基础地图;

在 xml 文件里加入 mapview 控件,例如以下所看到的:

在 java 代码中初始化地图 SDK,实现基础地图的展示:
//初始化地图 SDKSDKInitializer.initialize(getApplicationContext()); setContentView(R.layout.activity_main);//绑定XML中得 mapview 控件mapView = (MapView) findViewById(R.id.bmapView);

第五步、获取地图中心点。并加入 Marker 对象;

实现的核心代码例如以下:

baiduMap = mapView.getMap();LatLng latLng = baiduMap.getMapStatus().target;//准备 marker 的图片BitmapDescriptor bitmap = BitmapDescriptorFactory.fromResource(R.drawable.ic_launcher);//准备 marker option 加入 marker 使用markerOptions = new MarkerOptions().icon(bitmap).position(latLng);//获取加入的 marker 这样便于兴许的操作marker = (Marker) baiduMap.addOverlay(markerOptions);

第六步、实现 Marker 的点击事件响应;

利用 baidumap 对象的地图监听方法,实现针对 marker 的点击响应,核心代码例如以下:

//对 marker 加入点击对应事件	baiduMap.setOnMarkerClickListener(new OnMarkerClickListener() {				@Override		public boolean onMarkerClick(Marker arg0) {			// TODO Auto-generated method stub			Toast.makeText(getApplicationContext(), "Marker被点击了!

", Toast.LENGTH_SHORT).show(); return false; } });

第七步、利用 Button 控件,控制 Marker 的加入删除;

这里用 button 来控制在地图上加入 或者 删除一个 marker,首先在 xml 中加入一个 button 控件:

在 java 代码中加入这个 button 的点击事件响应,核心代码例如以下:

//按钮控制加入删除 button	button.setOnClickListener(new View.OnClickListener() {					@Override		public void onClick(View arg0) {			// TODO Auto-generated method stub							if(button.getText() == "加入Marker")			{				marker = (Marker) baiduMap.addOverlay(markerOptions);				button.setText("删除Marker");			}			else 			{				marker.remove();					button.setText("加入Marker");			}		}	});
通过以上的操作。就能够实现对应的 marker 加入,marker 点击响应,marker 删除等操作。

转载地址:https://blog.csdn.net/weixin_34049948/article/details/85884840 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:深入解析alloc/retain/release/dealloc实现
下一篇:SqlServer将数据库中的表复制到另一个数据库

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2024年04月11日 15时32分24秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

打开我的收藏夹 -- Python数据分析杂谈 2021-06-30
上手Pandas,带你玩转数据(1)-- 实例详解pandas数据结构 2021-06-30
上手Pandas,带你玩转数据(2)-- 使用pandas从多种文件中读取数据 2019-04-27
上手Pandas,带你玩转数据(3)-- pandas数据存入文件 2019-04-27
爬虫遇上不让右击、不让F12的网站,该怎么办? 2019-04-27
上手Pandas,带你玩转数据(4)-- 数据清洗 2019-04-27
上手Pandas,带你玩转数据(5)-- 数据转换与数据定位 2019-04-27
上手Pandas,带你玩转数据(6)-- 摆脱对pandas可视化丑图的刻板印象吧 2019-04-27
从零开始,学会Python爬虫不再难!!! -- (1)开篇:初识爬虫,基础铺垫 丨蓄力计划 2019-04-27
从零开始,学会Python爬虫不再难!!! -- (2)承接:解析网页,抓取标签 丨蓄力计划 2019-04-27
AttributeError: module ‘urllib‘ has no attribute ‘quote‘的解决办法 2019-04-27
linux shell — 6.初识 EXT2 文件系统 2019-04-27
Java — String(字符串) 2019-04-27
linux shell — 7.linux 磁盘与文件系统管理 2019-04-27
linux shell — 8.linux 磁盘与文件系统管理(2) 2019-04-27
Java — 事件监听、事件处理 初体验 2019-04-27
linux — Centos 7(第一天) 使用时出现的问题及解决方法 2019-04-27
数据结构 — 图的概述 2019-04-27
Centos 7 上 Eclipse 无法输入中文解决方法 2019-04-27
数据结构 — 图之邻接表存储创建和深度优先遍历 2019-04-27