android地图选点,【百度地图】Android实现地图展示、定位、选点、地点查询和地点模糊查询功能...

1、集成百度地图sdk

请查看百度地图开放平台,这里有很详细的教程。

2、地图展示功能

将地图控件放入到当前页面的布局中即可,如下:

bb14753d441f?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

MapView

在页面代码中,通过id获取到MapView的对象,再MapView的getMap()方法,可以获取到BaiduMap的对象,可以通过这个对象设置地图的缩放级别。

示例代码如下:

bb14753d441f?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

displayMap

注意:MapView应该在activity的onDestroy()方法中调用其destroy()方法。

3、定位功能

定位功能主要涉及到2个类和1个回调接口,即:LocationClient、LocationClientOption和BDLocationListener。

简单介绍一下:

LocationClient类:可以通过这个类的对象,调用start()方法,来定位到当前位置,调用stop()方法,来停止定位。

LocationClientOption类:用来设置一系列的参数,对LocationClient进行配置(用LocationClient调用setLocOption()方法)。

BDLocationListener接口:可以将这个接口设置给LocationClient类(用LocationClient调用registerLocationListener()方法),就可以在这个监听中,获取到定位的信息。

示例代码如下:

bb14753d441f?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

定位模块

4、选点功能

这个功能涉及到BaiduMap类、BitmapDescriptor类和OverlayOptions类。

首先,在MapView的clickable属性为true的情况下,通过BaiduMap类,对其设置点击监听。

然后在监听中,将覆盖物设置到所选的点上。

示例代码如下:

bb14753d441f?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

setOverlay

注意:覆盖物的bitmap不要在每次使用时都重新获取,只需在onCreate中初始化一次即可,否则会导致性能问题。

5、地点查询

这个功能主要涉及到GeoCoder类和OnGetGeoCoderResultListener接口。

GeoCoder类通过newInstance()方法来获取对象。

它的对象可以通过调用setOnGetGeoCodeResultListener方法来设置监听。

并且可以通过geocode方法来进行地点查询(即获取其坐标),和通过reverseGeoCode方法来进行反向查询(即通过坐标来获取地点)。

示例代码如下:

bb14753d441f?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

geoCoder

注意:GeoCoder应该在activity的onDestroy()方法中调用其destroy()方法。

6、地点模糊查询

这个功能主要涉及到SuggestionSearch类和OnGetSuggestionResultListener接口。

SuggestionSearch类通过newInstance()方法来获取对象。

它的对象可以通过调用setOnGetSuggestionResultListener方法来设置监听。

并且可以通过requestSuggestion方法来进行地点查询,这里获取到的是SuggestionResult对象,可以通过其getAllSuggestions()

方法来获取到查询的列表等信息。

示例代码如下:

bb14753d441f?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

suggestionSearch

注意:SuggestionSearch应该在activity的onDestroy()方法中调用其destroy()方法。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值