【Android】3.4 图层展示
分类:C#、Android、VS2015、百度地图应用; 创建日期:2016-02-04
3.4 示例4--图层展示
一、简介
1、地图类型
百度地图Android SDK 3.7.1提供了两种类型的地图资源(普通矢量地图和卫星图),开发者可以利用BaiduMap中的MapType属性(C#)来设置地图类型。C#核心代码如下:
mMapView = FindViewById<TextureMapView>(Resource.Id.bmapView);
mBaiduMap = mMapView.Map;
//设置底图显示模式:普通地图
mBaiduMap.MapType = BaiduMap.MapTypeNormal;
//设置底图显示模式:卫星地图
mBaiduMap.MapType = BaiduMap.MapTypeSatellite;
2、实时交通图
当前,全国范围内已支持多个城市实时路况查询,且会陆续开通其他城市。
目前有哪些城市具有实时交通图?
目前(2016-01-27)已有31个城市开通,分别为南京,广州,重庆,东莞,长春,台州,福州,金华,北京,常州,杭州,温州,大连,南昌,宁波,沈阳,中山,珠海,佛山,泉州,石家庄,成都,青岛,深圳,武汉,乌鲁木齐,长沙,上海,天津,无锡,厦门。之后其他城市还会陆续开通。
在地图上打开实时路况的C#核心代码如下:
mMapView = FindViewById<TextureMapView>(Resource.Id.bmapView);
mBaiduMap = mMapView.Map;
//开启交通图
mBaiduMap.TrafficEnabled = true;
3、百度城市热力图
百度地图SDK继为广大开发者开放热力图本地绘制能力之后,再次进一步开放百度自有数据的城市热力图层,帮助开发者构建形式更加多样的移动端应用。
百度城市热力图的性质及使用与实时交通图类似,只需要简单的接口调用,即可在地图上展现样式丰富的百度城市热力图。
在地图上开启百度城市热力图的C#核心代码如下:
mMapView = FindViewById<TextureMapView>(Resource.Id.bmapView);
mBaiduMap = mMapView.Map;
//开启交通图
mBaiduMap.BaiduHeatMapEnabled = true;


在上一节例子的基础上,只需要再增加下面的步骤即可。
2、添加demo04_layers.axml文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" > <LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" > <RadioGroup
android:id="@+id/RadioGroup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight=""
android:orientation="horizontal" > <RadioButton
android:id="@+id/normal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight=""
android:checked="true"
android:text="普通图" /> <RadioButton
android:id="@+id/statellite"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight=""
android:text="卫星图" />
</RadioGroup> <CheckBox
android:id="@+id/traffice"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight=""
android:checked="false"
android:text="交通图" /> <CheckBox
android:id="@+id/baiduHeatMap"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight=""
android:checked="false"
android:text="百度城市热力图" />
</LinearLayout> <com.baidu.mapapi.map.TextureMapView
android:id="@+id/bmapView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:clickable="true" /> </LinearLayout>
2、添加Demo04Layers.cs文件
在SrcSdkDemos文件夹下添加该文件。
using Android.App;
using Android.Content.PM;
using Android.OS;
using Android.Widget;
using Com.Baidu.Mapapi.Map; namespace BdMapV371Demos.SrcSdkDemos
{
/// <summary>
/// 演示地图图层显示的控制方法
/// </summary>
[Activity(Label = "@string/demo_name_layers",
ConfigurationChanges = ConfigChanges.Orientation | ConfigChanges.KeyboardHidden,
ScreenOrientation = ScreenOrientation.Sensor)]
public class Demo04Layers : Activity
{
//TextureMapView 是地图主控件
private TextureMapView mMapView;
private BaiduMap mBaiduMap; protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
SetContentView(Resource.Layout.demo04_layers); mMapView = FindViewById<TextureMapView>(Resource.Id.bmapView);
mBaiduMap = mMapView.Map;
mBaiduMap.SetMapStatus(MapStatusUpdateFactory.NewLatLng(MainActivity.HeNanUniversity)); //设置底图显示模式:普通图
var normal = FindViewById<RadioButton>(Resource.Id.normal);
normal.Click += delegate
{
mBaiduMap.MapType = BaiduMap.MapTypeNormal;
}; //设置底图显示模式:卫星图
var statellite = FindViewById<RadioButton>(Resource.Id.statellite);
statellite.Click += delegate
{
mBaiduMap.MapType = BaiduMap.MapTypeSatellite;
}; //是否显示交通图
var traffice = FindViewById<CheckBox>(Resource.Id.traffice);
traffice.CheckedChange += (s, e) =>
{
mBaiduMap.TrafficEnabled = e.IsChecked;
}; //是否显示热力图
var baiduHeatMap = FindViewById<CheckBox>(Resource.Id.baiduHeatMap);
traffice.CheckedChange += (s, e) =>
{
mBaiduMap.BaiduHeatMapEnabled = e.IsChecked;
};
} protected override void OnPause()
{
mMapView.OnPause();
base.OnPause();
} protected override void OnResume()
{
mMapView.OnResume();
base.OnResume();
} protected override void OnDestroy()
{
mMapView.OnDestroy();
base.OnDestroy();
}
}
}
4、修改MainActivity.cs文件
在MainActivity.cs文件的demos字段定义中添加下面的代码。
//示例4--图层展示
new DemoInfo<Activity>(Resource.String.demo_title_layers,
Resource.String.demo_desc_layers,
new Demo04Layers()),
运行。
【Android】3.4 图层展示的更多相关文章
- Android微信九宫格图片展示控件
版权声明:本文为xing_star原创文章,转载请注明出处! 本文同步自http://javaexception.com/archives/214 Android微信九宫格图片展示控件 半年前,公司产 ...
- 【Android】3.8 定位图层展示
分类:C#.Android.VS2015.百度地图应用: 创建日期:2016-01-27 一.简介 Android定位SDK v6.2.2(全球定位支持)提供GPS.基站.Wi-Fi等多种定位方式,适 ...
- Android闹钟开发与展示Demo
前言: 看过了不少安卓闹钟开发的例子,都是点到为止,都不完整,这次整一个看看. 一.闹钟的设置不需要数据库,但是展示闹钟列表的时候需要,所以需要数据库: public class MySQLiteOp ...
- android DialogFragment 实现Dialog展示扫二维码图片展示
近期开发项目,做个按钮点击弹出展示微信二维码关注微信公众号的展示框,于是想到DialogFragment,期间对Dialog的title的底框字体颜色做出相关设置,记录如下: 下面是 DialogFr ...
- Android中软键盘展示、EditText焦点获取及windowSoftInputMode属性探究
2017-08-14 21:44:23 有很多中情况,分别展示. 1.Activity不做任何设置,布局使用LinearLayout 会自动滚动EditText之上的所有View,代码: <?x ...
- arcgis server 10.1 发布动态图层展示海量及频繁更新的数据步骤
Arcgis server 发布动态图层及调用动态图层 做这个动态图层功能的原由是 有一个30万的数据需要通过arcgis GP工具转成shp然后渲染加载进地图,原来的做法是遍历生成shp面要素,读 ...
- Android App内文档展示方案整理
一.Word.Excel.PPT 展示 1. 微软Office公开Api接口 如果文档内容不是很机密或者只是需要实现预览文档的话,可以考虑使用微软的公共Api接口实现. 微软Office公开Api地址 ...
- android 获取图库中展示到界面中
layout: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns: ...
- Android系统编程入门系列之界面Activity绘制展示
上篇文章介绍了界面Activity的启动方式和生命周期,本篇将继续介绍在界面Activity中的内容是如何绘制展示给用户的. 在Android系统上运行新创建的界面Activtiy,给用户展示的是空白 ...
随机推荐
- struts2学习笔记(3)---Action中訪问ServletAPI获取真实类型的Servlet元素
一.源码: struts.xml文件: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE s ...
- Oracle 之 表新增字段后修改字段顺序
工作中遇到:在为一个表新增字段后,新增字段在最后,想调整新增字段的位置. 1.原始方法: --新建临时表以存储正确的顺序 create table A_2 as select (column1,col ...
- 微信小程序 - 各种示例
示例更新(后续持续更新): 最后一次更新:2018-11-7 小程序-地图显示(调用高德地图.腾讯App) - (2018-11-1) 小程序-上传图片(上传.预览.展示.删除) - (2018-11 ...
- POJ2226
题意:给定一个矩阵,当中有一些地方有水,如今有一些长度随意,宽为1的木板,要求在全部板不跨越不论什么坑的前提下,用一些木板盖住这些有水的地方,问至少须要几块板子? 思路: watermark/2/te ...
- Socket实现服务器与客户端的交互
连接过程: 根据连接启动的方式以及本地套接字要连接的目标,套接字之间的连接过程可以分为三个步骤:服务器监听,客户端请求,连接确认. (1)服务器监听:是服务器端套接字并不定位具体的客户端套接 ...
- jquery实现下拉联动
很多项目用到这个功能,虽然写了不下5次以上了,一直没做过记录,记录一下,下次直接拷贝了,免得还得要重复写浪费时间. 先上HTML代码: 品牌: <select class="sa&qu ...
- (一)Linux实操之——权限、任务调度、磁盘分区
1. 权限 1.1 查看权限 通过ls -l命令可以看到文件的详细信息 下面以一条信息解释各个位置字符的作用 -rwxr--r--. 1 root root 32 6月 18 10:15 choose ...
- ZooKeeper安装及配置(Windows系统下)
ZooKeeper的定义用一句话就能说清:分布式服务框架 Zookeeper -- 管理分布式环境中的数据.下面从安装开始,对这个框架进行分析. 1.安装 1. 官网下载压缩包并解压到D:\Progr ...
- xml 引入约束文件
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" ...
- iOS实现在webview页面内点击链接,跳转指定App
早上和UI刚谈到这个需求,然后自己试了一下,发现还是蛮简单的,记录一下: 思路分析: iOS内应用之间跳转都会用到 URL Schemes这个东西,简单的讲,这个就是用来定义app身份的一个id识别, ...