android地图sdk | 百度地图 sdk-凯发k8官方旗舰厅

浏览器版本低!无法浏览完整内容,建议升级或更换浏览器。
方法交互
下载开发文档

本章节将对各种地图交互方法的设置做介绍,包括改变地图缩放等级、设置地图操作区域和屏幕的边的距离,设置地图显示范围、改变地图类型和控件显示状态、改变地图手势对的中心点、隐藏地图标注等。

改变地图缩放等级

根据场景的不同可以分别通过mapstatusupdatefactory类的zoomto、zoomin、zoomout以及zoomby四种方法改变地图缩放级别。示例如下:

//直接缩放至缩放级别16
mbaidumap.setmapstatus(mapstatusupdatefactory.zoomto(16));
//使缩放级别增大一级
mbaidumap.setmapstatus(mapstatusupdatefactory.zoomin());
//使缩放级别减小一级
mbaidumap.setmapstatus(mapstatusupdatefactory.zoomout());
//在当前的缩放级别上增加或减小具体的缩放级别
// 4 在当前的缩放级别上增加4
mbaidumap.setmapstatus(mapstatusupdatefactory.zoomby(4));
// -4 在当前的缩放级别上减小4
mbaidumap.setmapstatus(mapstatusupdatefactory.zoomby(-4));

此外,上述示例代码中setmapstatus()方法是以直接跳变的效果改变地图缩放级别,开发者可以使用animatemapstatus()方法实现地图缩放级别改变的渐变动画效果。
注意:当设置的地图缩放级别超出sdk支持的最大或最小级别时对应以最大或最小缩放级别显示。

设置地图操作区距屏幕的距离

支持利用setviewpadding方法围绕地图边缘添加屏幕内边距。地图将保持原来的布局,但地图logo、比例尺、指南针以及缩放按钮等控件将调整到改变后的操作区域内显示。可以参考uisettingdemo。
适用于不希望操作控件被ui遮挡的情况。示例如下:

mbaidumap.setviewpadding(int left,int top, int right, int bottom);

setviewpadding方法在地图加载完成后生效,可以通过onmaploadedcallback.onmaploaded()回调接口来监听是否加载完成。
注意:根据百度地图api使用条款您的应用不得删除或覆盖百度地图logo或凯发app官方网站的版权声明。地图内边距允许您在必要时重新定位这些元素,若您需要在地图布局顶底部显示自定义ui,请设置内边距以保证百度地图logo和凯发app官方网站的版权声明始终可见。

设置地图显示范围

可以通过如下两种方法来设置地图显示范围。

方法一

// bounds 设置显示在屏幕中的地图地理范围
mbaidumap.setmapstatus(mapstatusupdatefactory.newlatlngbounds(bounds));

其中latlngbounds对象通过latlngbounds.builder()类使用西南和东北坐标点构造。

方法二

// bounds 设置显示在屏幕中的地图地理范围
mbaidumap.setmapstatus(mapstatusupdatefactory.newlatlngbounds(bounds),width, height);
改变地图手势的中心点(地图的中心点)

地图手势旋转等操作是以地图中心点为标准做旋转的,通过如下方法设置地图中心点。
设置方法为:

mbaidumap.setmapstatus(mapstatusupdatefactory.newlatlng(latlng latlng));
隐藏底图标注(控制地图poi显示)

根据使用需要,支持设置地图poi是否显示。

showmappoi方法

在baidumap提供了控制底图标注的showmappoi方法,默认显示底图标注。利用此属性可得到仅显示道路信息的地图,方法如下:

//隐藏地图标注,只显示道路信息
//默认显示地图标注
mbaidumap.showmappoi(false);

是否显示底图标注的对比如图:

开启标注关闭标注
地图poi标签控制

百度地图sdk支持根据标签类型控制地图上poi标签的是否显示,用户可以通过mbaidumap的setpoitagenable接口来实现,默认全部显示。同时通过mbaidumap的getpoitagenable接口来判断标签是否展示 相关接口 java代码

// 用于控制poi标签显示的类别枚举
publicenum
poitagstyle{
all,//显示poi标签 / 屏蔽所有poi标签
epidemic,//疫情标签
travel,//旅游出行标签
shop;//店铺标签
}
/**
* 是否展示底图poi标签
* @param poitagtype 标签类别
* @param isenabled 是否展示
*/
publicvoidsetpoitagenable(poitagtype poitagtype, boolean isenabled)
/**
* 是否展示底图poi标签
* @param poitagtype 标签类别
* @return
*/
public boolean getpoitagenable(poitagtype poitagtype)

使用方法 java代码

//获取地图后,屏蔽地图上的所有poi标签
mbaidumap.setpoitagenable(poitagtype.all,false);
开启路况关闭路况

上一篇

事件交互

下一篇

元素压盖顺序

本篇文章对您是否有帮助?

网站地图