我正在自定义按钮样式
<style name="custom_button" parent="@android:style/Widget.Button">
<item name="android:paddingTop">5dp</item>
<item name="android:paddingBottom">5dp</item>
<item name="android:textAllCaps">false</item>
<item name="colorButtonNormal">#f37022</item>
<item name="android:textColor">#ffffff</item>
</style>
用作
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Prepaid Package"
style="@style/custom_button"/>`
但是
colorButtonNormal
上的颜色已显示为On press
状态。现在做什么?
最佳答案
我从这里拿了例子。
Custom background
如果要根据按钮的状态自定义背景,请执行以下操作:
在res / drawable /中创建一个xml文件,例如button_custom.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/button_pressed"
android:state_pressed="true" />
<item android:drawable="@drawable/button_focused"
android:state_focused="true" />
<item android:drawable="@drawable/button_default" />
</selector>
然后为实际按钮添加:您可以将默认值与自定义背景合并。
<Button
...
android:background="@drawable/button_custom" />
同样在您的样式中,要固定自定义按钮样式的背景色:
<item name="android:background">#f37022</item>
"colorButtonNormal"
不是按钮的属性,您需要像其他项目一样使用内置属性。