【发布时间】:2015-03-11 19:14:27
【问题描述】:
我一直在寻找一种在 android 5.0 中处理按钮背景颜色的正确方法,我能找到的唯一解决方案是在 values-21/styles.xml 中为按钮定义样式:
<item name="android:colorButtonNormal">#2196f3</item>
这是为按钮着色的唯一方法,同时保留其设计和涟漪效果吗? 如果是的话,这意味着我必须为每个具有不同颜色的按钮定义一个自定义主题,真的???
注意:我的问题与向后兼容性和 AppCompat 无关,这已经讨论了很多。
【问题讨论】:
-
这没有回答问题,因为它意味着首先设置背景颜色,以便让 backgroundTint 工作。正如我的问题中提到的,我正在寻找一种方法来保留按钮的材质方面。所以我剩下的唯一解决方案是使用不同的样式并在按钮上设置主题属性?
-
基本上是的。当前版本的 Lollipop 存在一个错误,即 GradientDrawable 不考虑色调,因此唯一的选择是创建自己的背景或在 Button 上使用 android:theme 来覆盖 colorButtonNormal 属性的值。
-
谢谢阿兰夫。我决定遵循多风格的方式,效果很好,让我能够保持物质方面。
-
人们可以评论否决票吗?
标签: android button material-design tint