基于高德地图Windows Phone API 快速开发地图相关APP(二)
基础知识前面做过介绍 http://www.cnblogs.com/piaocz/archive/2012/08/14/2638097.html
下面说说 分层管理覆盖物的功能:
我们把不同的覆盖物 添加在不同的层上,可以进行快速有效的管理。
例如:我有一些点 添加在层1 上,我可以批量控制显示或者隐藏,或者一起调整视野。而层2上的点不受影响!
Com.AMap.Maps.Api.MapLayer
主要由这个类来控制。
我们来弄2个层管理数据(可以N层):
<AMap:MMap x:Name="map" ToolBar="Visible" Zoom="10" Center="116.397428, 39.90923"><AMap:MapLayer x:Name="layer1"></AMap:MapLayer><AMap:MapLayer x:Name="layer2"></AMap:MapLayer></AMap:MMap>
1 /// <summary> 2 /// 层一添加覆盖物 3 /// </summary> 4 /// <param name="sender"></param> 5 /// <param name="e"></param> 6 private void Layer1AddOverlay_Click(object sender, RoutedEventArgs e) 7 { 8 this.layer1.Children.Add(new MMarker(map.Center)); 9 this.layer1.Children.Add(new MMarker(new MLngLat(map.Center.LngX+0.1,map.Center.LatY+0.1))); 10 this.layer1.Children.Add(new MMarker(new MLngLat(map.Center.LngX + 0.21, map.Center.LatY + 0.21))); 11 this.layer1.Children.Add(new MMarker(new MLngLat(map.Center.LngX + 0.31, map.Center.LatY + 0.1))); 12 13 this.layer1.SetOverlaysFitView(); 14 }
this.layer1.SetOverlaysFitView();//将该层的所有可视的(Visible)并添加到该图层的Overlay对象调整在视野范围内
1 /// <summary> 2 /// 层1 所有覆盖物的显示和隐藏 3 /// </summary> 4 /// <param name="sender"></param> 5 /// <param name="e"></param> 6 private void Layer1ShowOrHidden(object sender, RoutedEventArgs e) 7 { 8 Button button = sender as Button; 9 if (this.layer1.Visibility == System.Windows.Visibility.Visible) 10 { 11 this.layer1.Visibility = System.Windows.Visibility.Collapsed; 12 button.Content = "显示层1"; 13 } 14 else 15 { 16 this.layer1.Visibility = System.Windows.Visibility.Visible; 17 button.Content = "隐藏层1"; 18 } 19 }
1 /// <summary> 2 /// 层2 添加覆盖物 3 /// </summary> 4 /// <param name="sender"></param> 5 /// <param name="e"></param> 6 private void Layer2AddOverlays(object sender, RoutedEventArgs e) 7 { 8 MLngLatCollection mcs = new MLngLatCollection(); 9 mcs.Add(map.Center); 10 mcs.Add(new MLngLat(map.Center.LngX + 0.21, map.Center.LatY + 0.11)); 11 mcs.Add(new MLngLat(map.Center.LngX + 0.31, map.Center.LatY + 0.231)); 12 mcs.Add(new MLngLat(map.Center.LngX + 0.11, map.Center.LatY + 0.431)); 13 mcs.Add(new MLngLat(map.Center.LngX + 0.21, map.Center.LatY + 0.231)); 14 this.layer2.Children.Add(new MPolyline(mcs)); 15 this.layer2.Children.Add(new MMarker(map.Center) { IconURL = "/Samples/051.png" }); 16 this.layer2.Children.Add(new MMarker(new MLngLat(map.Center.LngX + 0.31, map.Center.LatY + 0.131)) { IconURL = "/Samples/051.png" }); 17 18 }
1 /// <summary> 2 /// 层2 添加覆盖物视野调整 3 /// </summary> 4 /// <param name="sender"></param> 5 /// <param name="e"></param> 6 private void Layer2OverlaysFitView(object sender, RoutedEventArgs e) 7 { 8 this.layer2.SetOverlaysFitView(); 9 }
分层管理还有很多空间可以自由发挥,功能我就先说到这里吧
更多高级功能我在以后会提及!
开发中有任何问题和bug请联系我微博
http://weibo.com/piaochunzhi
转载于:https://www.cnblogs.com/piaocz/archive/2012/08/17/2644250.html
基于高德地图Windows Phone API 快速开发地图相关APP(二)相关推荐
- 一款基于 Java 的可视化 HTTP API 接口开发神器
今天推荐的 5 个项目是: magic-api :一款基于 Java 的可视化 HTTP API 接口开发神器. LanguageTool : 一款基于 Java 语言编写的开源语言校正工具. toB ...
- 如何设计一个API快速开发平台?
点击上方☝码猿技术专栏 轻松关注,设为星标! 及时获取有趣有料的技术 来源:toutiao.com/i6914469326074479108/ 在我之前谈API网关的时候曾经谈到过快速开发平台,即将A ...
- API 快速开发平台设计思考
作者 | 人月聊IT 来源 | toutiao.com/i6914469326074479108 在我之前谈API网关的时候曾经谈到过快速开发平台,即将API快速开发的一些内容放入到API网关中,实际 ...
- 打造一个 API 快速开发平台,牛逼!
来源:toutiao.com/i6914469326074479108/ 在我之前谈API网关的时候曾经谈到过快速开发平台,即将API快速开发的一些内容放入到API网关中,实际来看围绕API全生命周期 ...
- API快速开发平台设计思考
在我之前谈API网关的时候曾经谈到过快速开发平台,即将API快速开发的一些内容放入到API网关中,实际来看围绕API全生命周期管理,本身包括了开发态,运行态,运维态. 对于API网关更多的是解决运行态 ...
- 基于python的全部开源的快速开发平台
真正的大师,永远都怀着一颗学徒的心! 一.项目简介 今天说的这个软件是一款基于python的全部开源的快速开发平台. 二.实现功能 系统管理 菜单管理 部门管理 角色管理 用户管理 常规配置 字典管理 ...
- HBuilder开发旅游类APP(二) ----- mui结合H5+,快速实现首页、登录、注册等功能
HBuilder开发旅游类APP(二) ----- mui结合H5+,快速实现首页.登录.注册等功能 作者:班尼科 本博文是本人原创,喜欢请给我点赞,转载请注明出处哦. 标签: 旅游 H5+ MUI ...
- 如何通过短视频源码快速开发短视频APP
如何通过短视频源码快速开发短视频APP 随着抖音,快手等短视频的火热,越来越多的人也想搭建一套自己的短视频平台,话不多说,让我们开始吧. 一. 短视频APP开发 通常我们有两种选择方式: 1. 重头定 ...
- VUE-CLI脚手架快速开发外卖订餐APP
VUE-CLI脚手架快速开发外卖订餐APP 内容简介 VUE-CLI脚手架快速开发外卖订餐APP项目实战课程视频教程下载.本次课程为系列课程,最终成果将还原饿了么订餐APP的主要功能.该课程是系列课程 ...
最新文章
- 90 后 CTO 创业 6 年,做了一件改变互联网的“小事”
- vue v-for指令
- 百度地图大数据告诉你一线城市真相
- 用python生成云词汇_用python生成词云wordcloud
- 【每日SQL打卡】​​​​​​​​​​​​​​​DAY 12丨销售分析 III【难度简单】
- Qt文档阅读笔记-QPointer的概念及实例(并发多线程实例)
- 如何学习IOS开发~三个字(学思做)
- PostgreSQL学习手册(十一) 数据库管理
- [Server] HP DL380 G6更新esxi6.0 SATA 硬盘掉线问题
- Security+ 学习笔记43 无线网络
- android app 缓存目录在哪里找,Android App的文件缓存目录
- 前后端分离项目,请求头中包含Authorizaton:XX,但是后端getHeader(Authorizaton) 获取不到
- angular快速入门教程
- 硅芯思见:SystemVerilog中的packedarray和unpacked array
- go 获取当前时间,以及时间格式转换
- LocalDB的使用详解
- 微信小程序text控件部分字体文字大小和颜色设置四
- 高德地图中隐藏Marker的标记
- LRU(Least Recently Used)算法简单介绍
- java 依赖倒置_JAVA设计模式之依赖倒转原则
热门文章
- for each .. in ,for ... in , for ... of的用法
- 解决IE只能用管理员身份运行才能正常
- Objective-C设计模式——生成器Builder(对象创建)
- 大数据量,海量数据 处理方法总结(转)
- 【原创】推荐一个模板引擎 - templateengine
- Best open-source pedestrian detection library for commercial use?
- [New Portal]Windows Azure Virtual Machine (5) 配置VM的Endpoints
- Redux专题:实用
- 计算机网络基础(路由原理)
- Microsoft和AWS推出免费的云优化服务