LayerDrawable 移除一个图层

Posted

技术标签:

【中文标题】LayerDrawable 移除一个图层【英文标题】:LayerDrawable remove a layer 【发布时间】:2015-12-26 14:25:52 【问题描述】:

如何从LayerDrawable 中删除层? addLayer可以用来添加图层,但是我没有看到可以用来删除图层的函数。

https://developer.android.com/reference/android/graphics/drawable/LayerDrawable.html

【问题讨论】:

【参考方案1】:

您可以通过将 alpha 值设置为零来使图层透明:

  //ld is of LayerDrawable type
Drawable layer = ((LayerDrawable)(ld)).getDrawable(index);
layer.mutate().setAlpha(0);

【讨论】:

【参考方案2】:

查看文档后,没有直接的方法可以删除图层。 但是方法 public void setDrawable (int index, Drawable drawable) 可用于更改图层的可绘制对象,因此可能将图层替换为空(透明或空)可绘制对象将为您提供所需的结果。

【讨论】:

以上是关于LayerDrawable 移除一个图层的主要内容,如果未能解决你的问题,请参考以下文章

LayerDrawable OutOfMemoryError

图层可绘制/图层列表未在彼此之上绘制形状

ArcEngine真正释放锁文件,彻底移除图层

从控制中移除但在地图上保留图层

在核心动画中移除或隐藏图层时移除不透明度和时间间隔

Mapbox-GL setStyle 移除图层