一、地图加载
1、在线地图加载
在线地图加载我们需要使用到ArcGISTiledMapServiceLayer和ArcGISFeatureLayer两个类,这两个类分别加载地图和feature信息。Feature主要是地图上的数据。简单介绍一下这两个类,以后我们会更详细的进行介绍。
ArcGISTiledMapServiceLayer不能对图层里面的数据进行修改,也不能进行查询一般情况下用来做底图使用。
ArcGISFeatureLayer包含了要素最丰富的信息,其中每个要素都可以被查询和修改,并可以返回json数据,请求需要一定响应时间,不过值得使用。
简单的说了一下之后我们就看看怎么使用吧,代码如下:
没错,就是这么简单,String[0]和String[1]这两个对应的地图路径和服务路径,大家可以自行更改,那个ArcGISFeatureLayer.MODE.ONDEMAND是一种模式,我们一般用快照模式SNAPSHOT,模式下面会有介绍。
这里strings参数可以当做数组来看即可。
public static void LoadMap(MapView mapview,String... strings){
if(strings!=null&&strings.length<=1){
return;
}
ArcGISTiledMapServiceLayer layer=new ArcGISTiledMapServiceLayer(strings[0]);
ArcGISFeatureLayer feature=new ArcGISFeatureLayer(strings[1], ArcGISFeatureLayer.MODE.SNAPSHOT);
mapview.addLayer(layer);
mapview.addLayer(feature);
}
2、离线地图加载
离线的地图加载我们需要使用到ArcGISLocalTiledLayer和FeatureLayer。ArcGISLocalTiledLayer是用来添加离线地图的,目前支持两种格式的离线数据,一个是紧凑型的切片缓存,另一个是打包型的tpk文件。FeatureLayer是用来加载离线地图的图层。使用代码如下:
ArcGISLocalTiledLayer layer = new ArcGISLocalTiledLayer("");
try {
Geodatabase geodatabase = new Geodatabase("");
List<GeodatabaseFeatureTable> tables = geodatabase