ArcGIS API For IOS 实现图层显示控制分两个粒度,分别是服务的显示控制,然后是图层的显示控制。
1)服务的显示控制
服务的显示控制用AGSMapView Class实现。每个UIViewController界面如果加载地图都会有一个AGSMapView对象实例,那么设置这个AGSMapView 实例的hidden=TRUE;
比如:
AGSTiledMapServiceLayer *tiledLayer = [[AGSTiledMapServiceLayer alloc] initWithURL:[NSURL URLWithString:kTiledEMapZoneMapService<wbr>URL ]];<br>
UIView *emapzoneTiledMap = [self.mapView addMapLayer:tiledLayer withName:@"Tiled Layer"];<br>
emapzoneTiledMap.hidden = NO;</wbr>
<wbr></wbr>
2)地图视图上服务的显示控制
单个地图服务的显示控制用AGSDynamicLayerView或AGSTiledLayerView实现,比如:
NSDictionary *dict=self.mapView.mapLayerViews;
NSArray *arr=[dict allValues];
for (int i = 0; i < [arr count]; i++) {
<wbr><wbr>AGSDynamicLayerView *mapLayerView=[arr objectAtIndex:i];<br><wbr><wbr>if (显示控制条件) {<br><wbr><wbr>mapLayerView.hidden=TRUE;<br><wbr><wbr>}<br>
}<br></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>3)单个服务内有多个图层的显示控制
NSURL* url = [NSURL URLWithString: @"
http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ESRI_StateCityHighway_USA/MapServer"];AGSDynamicMapServiceLaye<wbr>r*
layer = [AGSDynamicMapServiceLaye<wbr>r dynamicMapServiceLayerWi<wbr>thURL: url];<br>
//<span style="color:red">only display ‘ushigh’ (id=0) and ‘states’ (id=1) layer<br></span>layer.visibleLayers = [NSArray arrayWithObjects:[NSNumber numberWithInt:0],[NSNumber numberWithInt:1], nil];<br>
通过设置visibleLayers 来确定图层是否可见。<br><br>
4) 小结</wbr></wbr></wbr>
对象模型图如下:
<wbr></wbr>
实际上AGSMapView 、AGSLayerView对象都是UIView的子类,所以最终控制的是UIView是否可见。这样通过设置UIView是否隐藏来进行图层显示的控制。
分享到:
相关推荐
ArcGIS API For iOS 2.2.1及26个例程源代码 ArcGIS API for iOS 使您可使用 Objective C 构建多种应用程序(这些应用程序将运用 ArcGIS Server 提供的强大制图、地理编码、地理处理和自定义功能)并将它们部署到 ...
结合arcgis api for javastript 实现地图的图层控制功能,控制实现图层的显隐
ArcGIS API For iOS Sample 20110830.zip
ArcGIS API for iOS SDK 1.8 安装包 (请在Mac下安装)
该代码基于ArcGIS API for JavaScript实现了图层缩放至某个范围
对了解基于IOS开发ArcGIS移动系统有帮助
ArcGIS API For iOS 详解文档
arcgis for ios demo 官方例子
ArcGIS API for iOS 使您可使用 Objective C 构建多种应用程序(这些应用程序将运用 ArcGIS Server 提供的强大制图、地理编码、地理处理和自定义功能)并将它们部署到 Apple iPhone、iPod Touch 和 iPad 设备。API ...
ArcGIS API for iOS 进阶
arcgis api for javascript 实现动态轨迹(巡查轨迹)
ArcGIS-API-for-iOS进阶.pdf
ArcGIS API for iOS进阶_张宝才
ArcGIS API for iOS V2.1正式发布了(今后后简称为ArcGIS Runtime SDK for iOS)。 此版本在V2.0.1的基础上提供iOS 5的支持,新增功能包括: 使用ArcGIS 10.1 tile packages (*.tpk files)查看地图的内容,...
本代码使用ArcGIS API for JavaScript 3.20 版本 实现热力图,效果图https://blog.csdn.net/idomyway/article/details/80975940
ArcGIS API for JavaScript用于构建高性能的...ArcGIS API for JavaScript整个体系构建与Dojo基础之上,而Dojo是一个JavaScript实现的开源工具包,其基本语法、使用方法大家可以参考Dojo官方网站的相关说明和示例代码。
arcgis api for js实现动态切换底图(淡入淡出效果)arcgis api for js实现动态切换底图(淡入淡出效果)
ArcGIS API for iOS 使您可使用 Objective C 构建多种应用程序(这些应用程序将运用 ArcGIS Server 提供的强大制图、地理编码、地理处理和自定义功能)并将它们部署到 Apple iPhone、iPod Touch 和 iPad 设备。API ...
二、ArcGIS.Server.9.3和ArcGIS API for Flex实现动态图层和瓦片图层叠加显示(二)...................................................................... 5 三、ArcGIS.Server.9.3和ArcGIS API for Flex实现...
用arcgis api for javascript 3.23实现的简单编辑功能 能绘制点线面