ArcGis 地图使用-从ArcGIS Online项加载图层并将其添加到地图

ArcGIS Runtime SDK允许您通过项目标识符访问存储在ArcGIS Online中的项目(例如图层)。使用要素图层,您可以存储地理要素(点,线,面),编辑或更新属性以及同步更改。如显示网络地图教程中所示,您可以加载和显示预先配置有底图和图层的现有网络地图。或者,也可以直接从ArcGIS Online加载各个图层,并使用代码构建地图。为此,您需要按ID访问每个项目。您可以通过在ArcGIS Online上浏览并在URL末尾进行标识来找到项目的ID。

关于创建自己的Online库的问题看这篇文章

本篇利用的是官网提供的demo图层

在2D地图的基础之上进行改动: 布局文件不改

public class MainActivity extends AppCompatActivity {

    private MapView mapView;
    private FeatureLayer mFeatureLayer;             //保留对将在创建的要素图层的引用。
    String itemID = "2e4b3df6ba4b44969a3bc9827de746b3";         //要添加的图层的项目ID。
    Portal portal = new Portal("http://www.arcgis.com");
    final PortalItem portalItem = new PortalItem(portal, itemID);           //创建一个变量以存储ArcGIS Online PortalItem。PortalItem表示存储在ArcGIS在线内容-在这种情况下,Trailheads样式化门户项目(特征层)。

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mapView = findViewById(R.id.map);

        setupMap();




    }


    private void setupMap() {
        if (mapView != null) {
            Basemap.Type basemapType = Basemap.Type.TOPOGRAPHIC;                //需要更改样式
            double latitude = 34.09042;
            double longitude = 118.71511;
            int levelOfDetail = 11;
            ArcGISMap map = new ArcGISMap(basemapType, latitude, longitude, levelOfDetail);
            mapView.setMap(map);

            addLayer(map);                      //创建完地图之后添加图层

        }
    }

    private void addLayer(final ArcGISMap map) {                                //添加图层的方法
        mFeatureLayer = new FeatureLayer(portalItem,0);
        mFeatureLayer.addDoneLoadingListener(new Runnable() {
            @Override
            public void run() {
                if (mFeatureLayer.getLoadStatus() == LoadStatus.LOADED) {
                    map.getOperationalLayers().add(mFeatureLayer);
                }
            }
        });
        mFeatureLayer.loadAsync();
    }

再次运行程序就会发现地图已经显示后来添加的图层


image.png
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容