为了账号安全,请及时绑定邮箱和手机立即绑定

具有不同颜色的标准Android按钮

具有不同颜色的标准Android按钮

绝地无双 2019-06-12 14:53:15
具有不同颜色的标准Android按钮我想稍微改变一个标准的Android按钮的颜色,以便更好地匹配客户的品牌。到目前为止,我发现最好的方法是更改Button可拉到位于res/drawable/red_button.xml:<?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/red_button_pressed" />     <item android:state_focused="true" android:drawable="@drawable/red_button_focus" />     <item android:drawable="@drawable/red_button_rest" /></selector>但要做到这一点,我实际上需要为每个要自定义的按钮创建三个不同的绘图(一个用于REST按钮,一个用于聚焦时,另一个用于按下)。比我需要的要复杂得多,也不干燥。我真正想做的就是把某种颜色转换到按钮上。有比我更容易改变按钮颜色的方法吗?
查看完整描述

3 回答

?
米脂

TA贡献1836条经验 获得超3个赞

根据Tomasz的答案,您还可以使用PorterDuff乘模式编程地设置整个按钮的阴影。这将改变按钮的颜色,而不仅仅是色调。

如果从标准灰色阴影按钮开始:

button.getBackground().setColorFilter(0xFFFF0000, PorterDuff.Mode.MULTIPLY);

会给你一个红色阴影按钮,

button.getBackground().setColorFilter(0xFF00FF00, PorterDuff.Mode.MULTIPLY);

会给你一个绿色阴影按钮等,其中的第一个值是颜色的六角形格式。

它的工作原理是将当前按钮的颜色值乘以您的颜色值。我相信你也可以用这些模式做更多的事情。


查看完整回答
反对 回复 2019-06-12
  • 3 回答
  • 0 关注
  • 327 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信