Android更改选择器在运行时的颜色?

时间:2012-10-10 07:53:17

标签: android android-layout layout

我想在运行时更改选择器的渐变颜色。我该如何编程??

以下是选择器的XML。     

    <item android:state_pressed="true" >
        <shape>
            <gradient
                android:startColor="#ffff0000"
                android:endColor="#ffff00ff"
                android:angle="270" />
            <corners
                android:topLeftRadius="3dp"
                android:topRightRadius="3dp"/>
        </shape>
    </item>

    <item>        
        <shape>
            <gradient
                android:endColor="#ffff0d00"
                android:startColor="#ffff00d0"
                android:angle="270" />
            <corners
                android:radius="3dp" />
        </shape>
    </item>
</selector>

感谢。

2 个答案:

答案 0 :(得分:0)

试试这段代码

Drawable d = getResources().getDrawable(R.drawable.your_selector_file);
yourview.setImageDrawable(d);

答案 1 :(得分:0)

使用GradientDrawable。例如new GradientDrawable(Orientation.TOP_BOTTOM, new int[] { 0xffff0000, 0xffff00ff});