首页 / 浏览问题 / 移动GIS / 问题详情
android iserver rest服务 子图层显隐藏控制
7EXP 2023年08月03日

使用产品:supermap imobile 11i

问题描述

DatasourceConnectionInfo gasSourceInfo = new DatasourceConnectionInfo();
        gasSourceInfo.setAlias("GAS");
        gasSourceInfo.setEngineType(EngineType.Rest);
        gasSourceInfo.setServer("http://172.188.23.111:3090/iserver/services/map-Mobile/rest/maps/Mobile");
        Datasource gasDatasource = workspace.getDatasources().open(gasSourceInfo);
        if (gasDatasource != null) {
          map.getLayers().add(gasDatasource.getDatasets().get(0), true);
        }else {
            XToastUtils.error("打开设备资源失败");
        }

项目目前对接的是rest地图服务,我知道无法通过imobile直接去控制子图层的显示和隐藏,能不能通过数据服务的方式,请求得到子图层的dataset,然后通过

map.getLayers().add(dataset, true)的方式去控制子图层的显示,如果可以的话,怎么去请求得到dataset,如果不可以的话,怎么才能实现子图层的显隐控制,麻烦给个实现方案

1个回答

您好,iMobile暂不支持对rest地图服务单独控制子图层的功能,控制单个图层的显隐可以用layer.setvisiable实现
3,735EXP 2023年08月03日
手机端使用layer.setvisiable,需要什么样的地图服务呢,我看web端也是rest服务,通过layerid可以控制显示隐藏
任意地图服务都是可以用layer.setVisiable设置显隐的,imobile以只读数据源的形式打开地图服务,且打开后其中的地图读取为影像数据集
...