以编程方式更改图层列表项的顶部/右侧/底部/左侧

时间:2016-12-14 09:12:14

标签: android drawable layer-list

我有layer-list.xml

<?xml version="1.0" encoding="UTF-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
    </item>
    <item
        android:id="+id/item_2"
        android:bottom="1dp"
        android:left="1dp"
        android:right="1dp"
        android:top="1dp">
        <shape android:shape="rectangle">
            <solid android:color="@android:color/white" />
        </shape>
    </item>
</layer-list>

现在我想在运行时更改(top,right)之类的项的某些属性。我可以通过

更改项目内部形状的颜色
LayerDrawable layerDrawable = (LayerDrawable) v.getContext().getResources().getDrawable(R.drawable.layer_list);
GradientDrawable drawable2 = (GradientDrawable) layerDrawable.findDrawableByLayerId(R.id.item_2);
drawable2.setColor(strokeColor[0]); 

但我不知道如何更改top,right。我该怎么改呢? 任何帮助或建议都将非常感激。

1 个答案:

答案 0 :(得分:4)