先來看一個模型:
|–TiledMapServiceLayer
| |–ArcGISTiledMapServiceLayer
|–DynamicLayer
| |–DynamicMapServiceLayer
| |–ArcGISDynamicMapServiceLayer
| |–ArcGISImageServiceLayer
| |–GPResultImageLayer
|–GraphicsLayer
| |–FeatureLayer
以上紅色均為常用的幾種圖層,ArcGISTiledMapServiceLayer主要用於加載發布在ArcGIS Server上的緩存地圖服務,具備了層級的概念,並在服務端緩存了預瀏覽的地圖圖片(如下圖)。
ArcGISDynamicMapServiceLayer動態地圖通常用於實時顯示經常變化的數據,支持控制單個圖層可見性,可動態投影。但缺點是顯示效果較差,整個服務出圖較慢。
//ArcGISDynamicMapServiceLayer class is used to define the Layer that is added to the
//MapView object.
MapView mv = new MapView(this);
mv.addLayer(new ArcGISDynamicMapServiceLayer(
"http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Population_World/MapServer"));
setContentView(mv);
GraphicsLayer就是包含了一個甚至是更多元素的圖層,而且在ArcGIS API for JavaScript中默認了創建了Map Object之后都會默認包含一個元素圖層,元素圖層在地圖上支持創建和刪除Graphic。同時需要注意的一點是,圖層的加載遵循“先上后下”的原則,即首先加載的圖層都在下面,以此類推,同時所有的元素圖層都是分布在ArcGISDynamicMapServiceLayer和ArcGISTiledMapServiceLayer上的。