当用户单击时,我需要更改材料的颜色平坦/无边界按钮。我当前的设置适用于凸起的按钮,但无边界按钮不起作用。
我使用的样式,按下colorControlHighlight
应该更改颜色?:
<style name="PrimaryFlatButton" parent="Widget.AppCompat.Button.Borderless.Colored">
<item name="colorButtonNormal">@color/primary_color</item>
<item name="colorControlHighlight">@color/primary_color_dark</item>
<item name="colorAccent">@color/primary_color</item>
<item name="android:textColor">@color/white_color</item>
布局项目:
<Button
android:id="@+id/Btn_SignUp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:theme="@style/PrimaryFlatButton" />
为什么凸起的按钮可以工作但不能无边界?
您需要更改的内容类似于此
在styles.xml中放置此
<style name="ButtonTheme" parent="Theme.AppCompat.Light">
<item name="colorControlHighlight">@color/button_highlight</item>
<item name="colorButtonNormal">@color/colorPrimaryDark</item>
<item name="colorControlActivated">@color/button_highlight</item>
</style>
和在XML布局中为按钮添加为按钮主题
<Button
android:id="@+id/sign_in_button"
android:theme="@style/ButtonTheme"
//Other parameters as usual
/>
更改父名称如下:
<style name="PrimaryFlatButton" parent="Widget.AppCompat.Button">
<item name="colorButtonNormal">@color/primary_color</item>
<item name="colorControlHighlight">@color/primary_color_dark</item>
<item name="colorAccent">@color/primary_color</item>
<item name="android:textColor">@color/white_color</item>
</style>
然后将其设置为" Android:theme",就像您刚刚一样。