简介

上一篇只是大致的提一下百度地图API的Android SDK的基本内容,然后抄袭一个官网上的Demo,今天看一下百度地图的第一部分,地图类型和基本的显示。

简单实战

不同类型地图的显示

    //设置地图类型
//public static final int MAP_TYPE_NORMAL = 1; 普通地图
//public static final int MAP_TYPE_SATELLITE = 2; 卫星地图
//public static final int MAP_TYPE_NONE = 3; 空白地图
private void setMapType(int type) {
if (mBaiduMap != null) {
mBaiduMap.setMapType(type);
}
}
  • 空白地图



  • 正常地图



  • 卫星地图




实时交通图和百度城市热力图

    /*
实时交通图
false- > 不开启
true -> 开启
*/
private void setTrafficMap(boolean enabled) {
if (mBaiduMap != null) {
mBaiduMap.setTrafficEnabled(enabled);
}
} /*
百度城市热力图
false- > 不开启
true -> 开启
*/
private void setHeatMap(boolean enabled) {
if (mBaiduMap != null) {
mBaiduMap.setBaiduHeatMapEnabled(enabled);
}
}
  • 实时交通图





    (此图是在地图类型为空白地图时显示的)
  • 百度城市交通热力图




地图控制和手势

地图控制

地图Logo

默认在左下角显示,不可以移除。

通过mMapView.setLogoPosition(LogoPosition.logoPostionleftBottom);方法,使用枚举类型控制显示的位置,共支持6个显示位置(左下,中下,右下,左上,中上,右上)。

地图Logo不允许遮挡,可通过mBaiduMap.setPadding(paddingLeft, paddingTop, paddingRight, paddingBottom);方法可以设置地图边界区域,来避免UI遮挡。

其中参数paddingLeft、paddingTop、paddingRight、paddingBottom参数表示距离屏幕边框的左、上、右、下边距的距离,单位为屏幕坐标的像素密度。

指南针

指南针默认为开启状态,可以关闭显示 。

比例尺

比例尺默认为开启状态,可以关闭显示。同时支持设置MaxZoomLevel和minZoomLevel,可通过mMapView.getMapLevel获取当前地图级别下比例尺所表示的距离大小。

具体的显示位置和内容如下



备注:指南针旋转地图的时候才会出现,一开始加载的时候是不会出现的

地图平移



制是否启用或禁用平移的功能,默认开启。如果启用,则用户可以平移地图

地图缩放

控制是否启用或禁用缩放手势,默认开启。如果启用,用户可以双指点击或缩放地图视图。

地图俯视(3D)

控制是否启用或禁用俯视(3D)功能,默认开启。如果启用,则用户可使用双指 向下或向上滑动到俯视图。

地图旋转

控制是否启用或禁用地图旋转功能,默认开启。如果启用,则用户可使用双指 旋转来旋转地图。

禁止所有手势

控制是否一并禁止所有手势,默认关闭。如果启用,所有手势都将被禁用。

mUiSettings = mBaiduMap.getUiSettings();
setSizeByBoolean(fabZoom, mUiSettings.isZoomGesturesEnabled());
setSizeByBoolean(fabZoom, mUiSettings.isZoomGesturesEnabled());
setSizeByBoolean(fabScroll, mUiSettings.isScrollGesturesEnabled());
setSizeByBoolean(fabOverlook, mUiSettings.isOverlookingGesturesEnabled());
setSizeByBoolean(fabRotate, mUiSettings.isRotateGesturesEnabled());
setSizeByBoolean(fabCompass, mUiSettings.isCompassEnabled()); private void setSizeByBoolean(FloatingActionButton fab , boolean bl) {
if(bl) {
fab.setButtonSize(FloatingActionButton.SIZE_NORMAL);
} else {
fab.setButtonSize(FloatingActionButton.SIZE_MINI);
}
} public void onClick(View view) {
...
case R.id.fab_zoom:
if (mUiSettings.isZoomGesturesEnabled()) {
mUiSettings.setZoomGesturesEnabled(false);
fabZoom.setButtonSize(FloatingActionButton.SIZE_MINI);
} else {
mUiSettings.setZoomGesturesEnabled(true);
fabZoom.setButtonSize(FloatingActionButton.SIZE_NORMAL);
}
break;
case R.id.fab_scroll:
if (mUiSettings.isScrollGesturesEnabled()) {
mUiSettings.setScrollGesturesEnabled(false);
fabScroll.setButtonSize(FloatingActionButton.SIZE_MINI);
} else {
mUiSettings.setScrollGesturesEnabled(true);
fabScroll.setButtonSize(FloatingActionButton.SIZE_NORMAL);
}
break;
case R.id.fab_rotate:
if (mUiSettings.isRotateGesturesEnabled()) {
mUiSettings.setRotateGesturesEnabled(false);
fabRotate.setButtonSize(FloatingActionButton.SIZE_MINI);
} else {
mUiSettings.setRotateGesturesEnabled(true);
fabRotate.setButtonSize(FloatingActionButton.SIZE_NORMAL);
}
break;
case R.id.fab_overlook:
if (mUiSettings.isOverlookingGesturesEnabled()) {
mUiSettings.setOverlookingGesturesEnabled(false);
fabOverlook.setButtonSize(FloatingActionButton.SIZE_MINI);
} else {
mUiSettings.setOverlookingGesturesEnabled(true);
fabOverlook.setButtonSize(FloatingActionButton.SIZE_NORMAL);
}
break;
case R.id.fab_compass:
if (mUiSettings.isCompassEnabled()) {
mUiSettings.setCompassEnabled(false);
fabCompass.setButtonSize(FloatingActionButton.SIZE_MINI);
} else {
mUiSettings.setCompassEnabled(true);
fabCompass.setButtonSize(FloatingActionButton.SIZE_NORMAL);
}
break;
...
}
  • 实际结果



    (好像并不能从图里看出什么呵 - - !)

<Android 应用 之路> 百度地图API使用(2)的更多相关文章

  1. <Android 应用 之路> 百度地图API使用(4)

    前言 百度地图的定位功能和基础地图功能是分开的,使用的是另外的jar包和so库文件,详情请关注官网: 百度定位SDK 配置 下载对应的jar包和so库,然后移动到lib目录下 AS中注意事项 sour ...

  2. <Android 应用 之路> 百度地图API使用(1)

    简介 详情请看百度地图官方网站 http://lbsyun.baidu.com/index.php?title=androidsdk/guide/introduction 使用方式 申请密钥,针对移动 ...

  3. <Android 应用 之路> 百度地图API使用(3)

    前言 上一篇讲解并实践了百度地图基本显示,地图类型,实时交通图,热力图,地图控制和手势控制,今天看下在地图上添加view和覆盖物. 地图Logo不允许遮挡,可通过mBaiduMap.setPaddin ...

  4. Android应用中使用百度地图API并加入标注(一)

    网上一些资料这样的的内容已经过时了,这里是最新的内容,假设哪里不正确,请吐槽... 1)下载百度地图移动版API(Android)开发包       要在Android应用中使用百度地图API,就须要 ...

  5. Android应用中使用百度地图API定位自己的位置(二)

    官方文档:http://developer.baidu.com/map/sdkandev-6.htm#.E7.AE.80.E4.BB.8B3 百度地图SDK为开发人员们提供了例如以下类型的地图覆盖物: ...

  6. 我的Android开发之路——百度地图开源工具获取定位信息

    定位技术在现在的移动设备上是必不可少的,许多app都会使用定位功能. 通常定位方式有两种:GPS定位:网络定位. Android系统对这两种定位方式都提供了相应的API支持,但是因为google的网络 ...

  7. Android应用中使用百度地图API之POI(三)

    先看执行后的图吧: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbWFqaWFuamll/font/5a6L5L2T/fontsize/400/fill/ ...

  8. Android端百度地图API使用详解

    百度地图API简介 百度地图移动版API(Android)是一套基于Android设备的应用程序接口,通过该接口,可以轻松的访问百度服务和数据,构建功能丰富.交互性强的地图应用程序. 百度地图移动版A ...

  9. Android 百度地图API 定位 导航

    看看这个利用百度地图定位并实现目的地导航的Demo. 首先看实现效果:                          进 入后首先会得到当前位置,在地图上显示出来.在输入框中输入目的地后,就会在地 ...

随机推荐

  1. 复制订阅服务器和 AlwaysOn 可用性组 (SQL Server)

    https://docs.microsoft.com/zh-cn/sql/database-engine/availability-groups/windows/replication-subscri ...

  2. ORM查询练习

    ORM查询练习 Django ORM  ORM查询的练习题 ORM代码 from django.db import models # Create your models here. class Pu ...

  3. TR-069_Amendment-4:附录G.穿越NAT网关的连接请求方式

    注意:这种机制只适用于RFC 3489[21]中定义的经典STUN,RFC 5389引入后,这个机制已经过时.这个机制不是设计用于RFC 5389中定义的STUN.IPv6部署要么不使用NAT,要么以 ...

  4. python+selenium+pychar安装

    python3.5(在百度输入python进入python官网-downloads-Windows-然后选择要下载的版本(可执行安装包,若电脑为32位的选择×86,若为64的选择×64)) selen ...

  5. Comparing deep learning frameworks: Tensorflow, CNTK, MXNet, & Caffe

    https://imaginghub.com/blog/10-a-comparison-of-four-deep-learning-frameworks-tensorflow-cntk-mxnet-a ...

  6. ScriptManager.RegisterStartupScript失效的解决方案

    在项目中一个页面使用System.Web.UI.ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "success ...

  7. (转)expect命令脚本语言介绍及生产实践

    原文:http://www.fblinux.com/?p=526 Expect介绍 expect是一个用来实现自动交互功能的软件套件,是用来实现自动和交互式任务程序进行通信,无需人的手工干预.比如SS ...

  8. 阿里云API公共参数的获取

    阿里云公共参数API  https://help.aliyun.com/document_detail/50284.html?spm=5176.10695662.1996646101.searchcl ...

  9. Beta阶段个人总结

    Beta阶段个人总结 这一次的项目在提出项目时有很大的信心能做好,但最后结果却不尽人意.由于这次的项目一开始目标是利用Android studio构建客户端然后电脑上连接数据库,在初期还未发现什么问题 ...

  10. SSO单点登录的实现原理是怎样的

    单点登录在现在的系统架构中广泛存在,他将多个子系统的认证体系打通,实现了一个入口多处使用,而在架构单点登录时,也会遇到一些小问题,在不同的应用环境中可以采用不同的单点登录实现方案来满足需求.我将以我所 ...