android 百度地图锚点,“androidsdk | 百度地图API SDK

第1行:

第1行:

{{androidsdk-sidebar}}{{androidsdk-sidebar}}

本章节将对点标记、添加Marker、绘制自定义Marker、Marker点击和拖拽操作、POI底图标注等作进一步说明。
点标记
+
更新时间:2020-06-23
本章节将对点标记、添加Marker、绘制自定义Marker、Marker点击和拖拽操作、POI底图标注等作进一步说明。
点标记

点标记用来在地图上标记任何位置,例如用户位置、车辆位置、店铺位置等一切带有位置属性的事物。
地图 SDK 提供的点标记功能包含两大部分,一部分是点(俗称 Marker)同时,SDK 对 Marker 封装了大量的触发事件,例如点击事件、长按事件、拖拽事件。
由于内容丰富,以下只能展示一些基础功能的使用,详细内容可参考类参考文档。点标记用来在地图上标记任何位置,例如用户位置、车辆位置、店铺位置等一切带有位置属性的事物。
地图 SDK 提供的点标记功能包含两大部分,一部分是点(俗称 Marker)同时,SDK 对 Marker 封装了大量的触发事件,例如点击事件、长按事件、拖拽事件。
由于内容丰富,以下只能展示一些基础功能的使用,详细内容可参考类参考文档。

添加Marker
添加Marker

第18行:

第18行:

mBaiduMap.addOverlay(option);mBaiduMap.addOverlay(option);

−+

−http://mapopen-pub-androidsdk.cdn.bcebos.com/map/newAndroid/overlay/addpopint1.png+https://mapopen-website-wiki.cdn.bcebos.com/demos/staticsdk/newimg/Screenshot_20200610_161054_baidumapsdk.demo.jpg

绘制自定义Marker
+
绘制自定义Marker

可根据实际的业务需求,在地图指定的位置上添加自定义的 Marker。MarkerOptions 是设置 Marker 参数变量的类,添加 Marker 时会经常用到。可根据实际的业务需求,在地图指定的位置上添加自定义的 Marker。MarkerOptions 是设置 Marker 参数变量的类,添加 Marker 时会经常用到。

'''Marker常用属性:''''''Marker常用属性:'''

−{| style="width: 400px" width="144" cellspacing="0" cellpadding="0" border="0"+{| style="width: 600px" width="144" cellspacing="0" cellpadding="0" border="0"

|-|-

| style="width: 168px" width="72" height="21" | '''名称'''| style="width: 168px" width="72" height="21" | '''名称'''

第99行:

第99行:

效果如图:效果如图:

−+

−http://mapopen-pub-androidsdk.cdn.bcebos.com/map/newAndroid/overlay/addpopint2.png+https://mapopen-website-wiki.cdn.bcebos.com/demos/staticsdk/newimg/Screenshot_20200610_120142_com.baidu.mapsdkexample.jpg

注自V3.6.0起,原内置覆盖物相关类代码开源
+
注:自V3.6.0起,原内置覆盖物相关类代码开源
覆盖物开源代码中提供了一些基于基础覆盖而组合而成的高级覆盖物,包括用于显示poi数据,规划路线,公交详情路线的覆盖物。 OverlayManager /PoiOverlay / IndoorPoiOverlay /IndoorRouteOverlay /TransitRouteOverlay /WalkingRouteOverlay /BikingRouteOverlay /DrivingRouteOverlay /BusLineOverlay /MassTransitRouteOverlay / 以上源码可在BaiduMapsApiDemo工程中找到。
可触发的Marker事件

−覆盖物开源代码中提供了一些基于基础覆盖而组合而成的高级覆盖物,包括用于显示poi数据,规划路线,公交详情路线的覆盖物。+

−+

−OverlayManager /PoiOverlay / IndoorPoiOverlay /IndoorRouteOverlay /TransitRouteOverlay /WalkingRouteOverlay /BikingRouteOverlay /DrivingRouteOverlay /BusLineOverlay /MassTransitRouteOverlay / 以上源码可在BaiduMapsApiDemo工程中找到。+

可触发的Marker事件
+

'''{{bluepoint}}Marker点击事件''''''{{bluepoint}}Marker点击事件'''

第150行:

第146行:

−+

效果如图:

−+https://mapopen-website-wiki.cdn.bcebos.com/demos/staticsdk/newimg/Screenshot_20200610_112649_baidumapsdk.demo.jpg

底图标注
+
底图标注

自V3.6.0版本起,SDK在BaiduMap提供了控制底图标注的showMapPoi方法,默认显示底图标注。利用此属性可得到仅显示道路信息的地图,方法如下:自V3.6.0版本起,SDK在BaiduMap提供了控制底图标注的showMapPoi方法,默认显示底图标注。利用此属性可得到仅显示道路信息的地图,方法如下:

 mBaiduMap.showMapPoi(false);
 mBaiduMap.showMapPoi(false);

第159行:

第155行:

运行后,底图标注被隐藏,效果如图:运行后,底图标注被隐藏,效果如图:

−+

−http://mapopen-pub-androidsdk.cdn.bcebos.com/map/newAndroid/overlay/addpopint3.png+https://mapopen-website-wiki.cdn.bcebos.com/demos/staticsdk/newimg/Screenshot_20200609_172353_baidumapsdk.demo.jpg

+

2020年6月28日 (日) 16:47的最后版本

更新时间:2020-06-23

本章节将对点标记、添加Marker、绘制自定义Marker、Marker点击和拖拽操作、POI底图标注等作进一步说明。

点标记

点标记用来在地图上标记任何位置,例如用户位置、车辆位置、店铺位置等一切带有位置属性的事物。

地图 SDK 提供的点标记功能包含两大部分,一部分是点(俗称 Marker)同时,SDK 对 Marker 封装了大量的触发事件,例如点击事件、长按事件、拖拽事件。

由于内容丰富,以下只能展示一些基础功能的使用,详细内容可参考类参考文档。

添加Marker

开发者可以根据自己实际的业务需求,利用标注覆盖物,在地图指定的位置上添加标注信息。开发者通过MarkerOptions类来设置Marker的属性。

绘制Marker的代码如下:

//定义Maker坐标点

LatLng point = new LatLng(39.963175, 116.400244);

//构建Marker图标

BitmapDescriptor bitmap = BitmapDescriptorFactory

.fromResource(R.drawable.icon_marka);

//构建MarkerOption,用于在地图上添加Marker

OverlayOptions option = new MarkerOptions()

.position(point)

.icon(bitmap);

//在地图上添加Marker,并显示

mBaiduMap.addOverlay(option);

28e43989a992c1385539519cae44e42f.png

绘制自定义Marker

可根据实际的业务需求,在地图指定的位置上添加自定义的 Marker。MarkerOptions 是设置 Marker 参数变量的类,添加 Marker 时会经常用到。

Marker常用属性:

名称

说明

icon

设置图标

animateType

动画类型

MarkerAnimateType.none

MarkerAnimateType.drop

MarkerAnimateType.grow

MarkerAnimateType.jump

alpha

透明度

position

位置坐标

perspective

是否开启近大远小效果

true

false

draggable

是否可拖拽

flat

是否平贴地图 (俯视图)(双手下拉地图查看效果)

true

false

anchor

锚点比例

rotate

旋转角度

title

设置标题

visible

是否可见

extraInfo

额外信息

自定义Marker示例

//定义Maker坐标点

LatLng point = new LatLng(39.944251, 116.494996);

//构建Marker图标

BitmapDescriptor bitmap = BitmapDescriptorFactory

.fromResource(R.drawable.marker_custom);

//构建MarkerOption,用于在地图上添加Marker

OverlayOptions option = new MarkerOptions()

.position(point) //必传参数

.icon(bitmap) //必传参数

.draggable(true)

//设置平贴地图,在地图中双指下拉查看效果

.flat(true)

.alpha(0.5f);

//在地图上添加Marker,并显示

mBaiduMap.addOverlay(option);

效果如图:

9a03b6169a6878237e1511d45551e48d.png

注:自V3.6.0起,原内置覆盖物相关类代码开源

覆盖物开源代码中提供了一些基于基础覆盖而组合而成的高级覆盖物,包括用于显示poi数据,规划路线,公交详情路线的覆盖物。 OverlayManager /PoiOverlay / IndoorPoiOverlay /IndoorRouteOverlay /TransitRouteOverlay /WalkingRouteOverlay /BikingRouteOverlay /DrivingRouteOverlay /BusLineOverlay /MassTransitRouteOverlay / 以上源码可在BaiduMapsApiDemo工程中找到。

可触发的Marker事件

Marker点击事件

点击Marker时会回调BaiduMap.OnMarkerClickListener,监听器的实现方式示例如下:

mBaiduMap.setOnMarkerClickListener(new BaiduMap.OnMarkerClickListener() {

//marker被点击时回调的方法

//若响应点击事件,返回true,否则返回false

//默认返回false

@Override

public boolean onMarkerClick(Marker marker) {

return false;

}

});

Marker拖拽事件

在拖拽Marker时会回调BaiduMap.OnMarkerDragListener,监听器的实现方式如下(要在构造MarkerOptions时开启draggable):

mBaiduMap.setOnMarkerDragListener(new BaiduMap.OnMarkerDragListener() {

//在Marker拖拽过程中回调此方法,这个Marker的位置可以通过getPosition()方法获取

//marker 被拖动的Marker对象

@Override

public void onMarkerDrag(Marker marker) {

//对marker处理拖拽逻辑

}

//在Marker拖动完成后回调此方法, 这个Marker的位可以通过getPosition()方法获取

//marker 被拖拽的Marker对象

@Override

public void onMarkerDragEnd(Marker marker) {

}

//在Marker开始被拖拽时回调此方法, 这个Marker的位可以通过getPosition()方法获取

//marker 被拖拽的Marker对象

@Override

public void onMarkerDragStart(Marker marker) {

}

});

效果如图:

9ba5d89d4443e33ee669ffb50a559115.png

底图标注

自V3.6.0版本起,SDK在BaiduMap提供了控制底图标注的showMapPoi方法,默认显示底图标注。利用此属性可得到仅显示道路信息的地图,方法如下:

mBaiduMap.showMapPoi(false);

运行后,底图标注被隐藏,效果如图:

ddc5737ed8ef441b3846e29582b787f8.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值