首页 / 浏览问题 / 移动GIS / 问题详情
设置图层透明度
xu
27EXP 2017年03月31日
你好,

我用的是iOS的 imobile sdk, 想设置当前显示图层的透明度。

我用 Layer* myLayerGroup = (Layer*)[m_map.layers getLayerAtIndex:0]; 拿到了最顶层的group,所有的图层都保存在最顶层group里面,然后我使用,[myLayerGroup setOpaqueRate:(int)slider.value]; 设置地图的透明度,但是地图并没有看到变化,尝试用  [m_map refresh]; 也没有效果。

麻烦问下,地图的透明度,这样设置是不对的吗。

数据源是用idesktop 制作的 smwu ,数据。

设置的范围是 0 - 100.

1个回答

请问你用的是对什么图层设置的透明呢?是矢量的数据还是影像数据?麻烦详细说下呢
1,737EXP 2017年03月31日
用idesktop 生成的矢量数据。有用天地图的地图做为影像图层,不过没改变影像图层的透明度。
这个方法也是可以进行设置的,我这边测试没有问题,setOpaqueRate只是反应时间稍长。设置图层透明度有两个方法,1、setOpaqueRate,2、设置图层的layerSetting,然后通过geostyle来设置。建议通过layerSetting来进行设置
好的,我试下,谢谢
这样设置了下,还是没看到变化,

 LayerGroup* group = (LayerGroup*)[m_map.layers getLayerAtIndex:0];

    [group setOpaqueRate:slider.value];

    LayerSettingVector* ve = group.layerSetting;

    [ve.geoStyle setFillOpaqueRate:slider.value];

,这个 group 下有很多子图层,要遍历每个子图层并设置子图层的透明度吗。

方便的话,能否把你测试的demo 发下,我做个参考
...