如何获取具有可绘制状态的按钮的背景颜色?

时间:2015-04-28 05:31:13

标签: java android

这是我的可绘制状态:

<?xml version="1.0" encoding="utf-8" ?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true" >
        <shape>
            <solid
                android:color="#ffdcd400" />
        </shape>
    </item>
    <item>
        <shape>
            <solid
                android:color="#ffe8e000" />
        </shape>
    </item>
</selector>

我得到了这个功能的按钮:

public void ir(View v)
{
        Button boton_clickeado=(Button)v;
        StateListDrawable drawable= (StateListDrawable) v.getBackground();
}

我想以编程方式获取背景颜色(未按下状态)“#ffe8e000”。 但我不知道使用哪种函数来获取它。

1 个答案:

答案 0 :(得分:0)

试试这个..

int color = Color.TRANSPARENT; StateListDrawable drawable= (StateListDrawable) v.getBackground(); if (drawable instanceof ColorDrawable) color = ((ColorDrawable) drawable).getColor();