我用选择器创建了一个自定义按钮:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/button_np"
android:state_enabled="false"/>
<item android:drawable="@drawable/button_np_pressed"
android:state_pressed="true"/>
<item android:drawable="@drawable/button_np"
android:state_focused="true"/>
<item android:drawable="@drawable/button_np"/>
</selector>
我希望能够使用灰色按钮作为图像对此按钮进行着色,然后使用我定义的颜色对其进行着色。
这可能吗?
由于
答案 0 :(得分:2)
确定可以(至少在代码中)设置滤色器。
import android.graphics.PorterDuff;
Button.getBackground().setColorFilter(0xFF00FF00,PorterDuff.Mode.MULTIPLY); // Green
Button.getBackground().setColorFilter(0xFFFF0000,PorterDuff.Mode.MULTIPLY); // Red
只需选择颜色并将它们放入setColorFilter参数中即可。
答案 1 :(得分:0)
是的,它运作得很好,我在我的使用中,只需创建一个9Patch按钮并将图像的名称放在“@ drawable / button_np”的位置,“button_pn”是你的名字按钮图像