我有一个LayerDrawable,我使用5个Drawables的Drawables数组构建。 现在让我们说在运行时我想为我的LayerDrawable添加另一个Drawable,以响应一个事件。如何在不重新创建LayerDrawable的情况下执行此操作,这次是使用6个Drawables的Drawables数组? 感谢。
答案 0 :(得分:4)
创建LayerDrawable后,无法将新的Drawable添加到其中。
请参阅source of LayerDrawable:drawables数组保存在mLayerState.mChildren
中,并且仅在构造函数中设置。
但是,setDrawableByLayerId(..)
可用于将现有的Drawable与新的Drawable交换。
答案 1 :(得分:0)