9D 安卓端rest服务控制子图层显示隐藏

0 投票

在安卓端,加载了rest服务后,怎么来控制该服务下的子图层显示隐藏。我现在的代码如下:

if (dsInfo != null) {
    Datasource ds = mapManager.getWorkspace().getDatasources().open(dsInfo);
    if (ds != null) {
        Datasets datasets = ds.getDatasets();
        Dataset dataset = ds.getDatasets().get(0);
        Layer layer = mapManager.getMapLayers().add(dataset, true);
        layer.setVisible(false);
        layer.setDescription(mId);
        layers.add(layer);
        if (visible.equals("true"))
            layer.setVisible(true);
    }
}

这里的Dataset是一个DatasetImage对象,此Dataset以及添加到地图后的layer都没有地方控制其子图层的显示隐藏

7月 17 分类:  33次浏览 | 用户: yubaorong (4 分)

1个回答

0 投票
 
已采纳
您好,对于打开的在线地图服务是没法设置其子图层的显隐的,在线地图服务打开后就类似于一个影像数据集。只能是控制整个图层的显隐或者在制图的时候设置了图层的显隐。
7月 17 用户: 董懿鑫 名扬四海 (3,422 分)
采纳于 7月 17 用户:yubaorong
那我换成udb的数据,控制子图层的显示和隐藏是否可以呢?
你好,如果你打开的是本地的工作空间,是可以获取地图中的图层来进行显隐的。直接用layer.setVisible()
layer可以控制我知道,只是现在我们这有个需求,因为js版的地图可以控制到子图层,所以客户想要移动端也要控制到子图层,所以提个建议,后期是否可以和js版一样,支持控制到子图层
好的,谢谢你的建议
...