colorControlHighlight在按下时不会改变平面按钮的颜色
问题描述:
当用户单击它时,需要更改材料平面/无边框按钮的颜色。我当前的设置适用于凸起按钮,但不适用于无边界按钮。colorControlHighlight在按下时不会改变平面按钮的颜色
风格我使用,按下时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”。
+0
谢谢 - 但这不会使它成为一个正常的按钮吗?需要一个平坦的 – cfl
为什么是父Theme.Appcompat.Light而不是Widget.AppCompat.Button.Borderless.Colored? – cfl
您需要指定与您的应用程序对齐的应用程序主题 – Stallion