我没有图像,但有 3 个 rgb 模式,我需要在按钮正常按下按钮等时应用它们。此外,文本颜色应该相应地改变。
如何使用 6 rgb (3+3) 并在 xml 或代码中应用到 Button。PS:我不是在寻找基于选择器图像的解决方案,当我计划更改颜色时,我必须在其中创建图像
我没有图像,但有 3 个 rgb 模式,我需要在按钮正常按下按钮等时应用它们。此外,文本颜色应该相应地改变。
如何使用 6 rgb (3+3) 并在 xml 或代码中应用到 Button。PS:我不是在寻找基于选择器图像的解决方案,当我计划更改颜色时,我必须在其中创建图像
看看这个线程,它解释了这一切,甚至如何只使用一个具有不同效果的图像。从中:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@drawable/rbutton_pressed" />
<item android:state_focused="true" android:drawable="@drawable/button_focus" />
<item android:drawable="@drawable/button_rest" />
</selector>
这是具有三个不同可绘制对象的方法。使用以下代码,您可以应用一些效果,如线程中所述:
button.getBackground().setColorFilter(0xFF00FF00, PorterDuff.Mode.MULTIPLY);
或者
button.getBackground().setColorFilter(new LightingColorFilter(0xFFFFFFFF, 0xFFAA0000));