更改材质轮廓的颜色按钮不起作用 [英] Change Color from material outlined button doesn't work

查看:0
本文介绍了更改材质轮廓的颜色按钮不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我要更改活动切换按钮的颜色。但是,仅仅涟漪颜色的更改就会产生影响。 我希望自定义活动按钮的背景色和文本颜色。

<style name="ToggleButtonGroupStyle" parent="Widget.MaterialComponents.Button.OutlinedButton">
            <item name="rippleColor">@color/colorAccent</item>
</style>

在下面的toggleButtonGroup中,我使用了上面的样式:

         <com.google.android.material.button.MaterialButtonToggleGroup
            android:id="@+id/priority_btn_group"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            android:layout_alignParentLeft="true"
            app:selectionRequired="true"
            app:singleSelection="true"
            app:checkedButton="@+id/btn_one"
            >

            <com.google.android.material.button.MaterialButton
                android:id="@+id/btn_one"
                style="@style/ToggleButtonGroupStyle"
                android:layout_width="@dimen/priority_btn_width"
                android:layout_height="wrap_content"
                android:shadowColor="@color/project_text"
                android:text="0" />

            <com.google.android.material.button.MaterialButton
                style="@style/ToggleButtonGroupStyle"
                android:layout_width="@dimen/priority_btn_width"
                android:layout_height="wrap_content"
                android:text="!" />

            <com.google.android.material.button.MaterialButton
                style="@style/ToggleButtonGroupStyle"
                android:layout_width="@dimen/priority_btn_width"
                android:layout_height="wrap_content"
                android:text="!!" />

            <com.google.android.material.button.MaterialButton
                style="@style/ToggleButtonGroupStyle"
                android:layout_width="50dp"
                android:layout_height="wrap_content"
                android:text="!!!" />


        </com.google.android.material.button.MaterialButtonToggleGroup>

谁能给我一个提示,这是什么问题? 谢谢:)

推荐答案

选中按钮的背景色基于colorPrimary属性。
您可以使用:

<com.google.android.material.button.MaterialButton
    android:id="@+id/btn_one"
    style="?attr/materialButtonOutlinedStyle"
    android:theme="@style/ThemeOverlay.Custom.Button"

使用:

<style name="ThemeOverlay.Custom.Button" parent="">
    <item name="colorPrimary">@color/....</item>
</style>

或者您可以将自定义样式用于:

    <com.google.android.material.button.MaterialButton
        android:id="@+id/btn_one"
        style="@style/ToggleButtonGroupStyle"

使用:

<style name="ToggleButtonGroupStyle" parent="Widget.MaterialComponents.Button.OutlinedButton">
    <item name="backgroundTint">@color/custom_selector</item>
</style>


<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:color="@color/..." android:state_checked="true"/>  <!-- selected color -->
    <item android:color="@android:color/transparent" android:state_checked="false"/>
</selector>

这篇关于更改材质轮廓的颜色按钮不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆