【问题标题】:Change background color on hover of a CardView更改 CardView 悬停时的背景颜色
【发布时间】:2020-07-01 12:16:18
【问题描述】:

我想在 Android Studio 中将背景颜色更改为我的 CardView,我想使用选择器,但我不知道该怎么做

这在我的代码中:

<androidx.cardview.widget.CardView
                android:id="@+id/card_ordina"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="15dp"
                app:cardBackgroundColor="@color/orange"
                app:cardCornerRadius="20dp">

                <ImageView
                    android:layout_width="80dp"
                    android:layout_height="80dp"
                    android:layout_gravity="center_horizontal"
                    android:layout_marginLeft="30dp"
                    android:layout_marginTop="20dp"
                    android:layout_marginRight="30dp"
                    android:layout_marginBottom="40dp"
                    android:background="@drawable/options"
                    android:backgroundTint="#F44336"
                    android:padding="10dp"
                    android:src="@drawable/carrello"
                    android:tint="@color/background" />

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="bottom|center"
                    android:layout_marginBottom="5dp"
                    android:fontFamily="@font/title"
                    android:text="ORDINA"
                    android:textColor="@color/background"
                    android:textSize="18sp" />

            </androidx.cardview.widget.CardView>

【问题讨论】:

    标签: android selector android-cardview


    【解决方案1】:

    您需要制作一个选择器并将以下属性设置为您的 CardView。

    android:foreground="@drawable/card_foreground"
    android:clickable="true"
    android:focusable="true"
    

    这里是card_foreground.xml的代码,把它添加到你项目的drawable文件夹中。

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:state_pressed="true">
            <shape android:shape="rectangle">
                <solid android:color="#e0F5AD6E"/>
                <corners android:radius="2dp" />
            </shape>
        </item>
        <item android:state_focused="true" android:state_enabled="true">
            <shape android:shape="rectangle">
                <solid android:color="#0f000000"/>
                <corners android:radius="2dp" />
            </shape>
        </item>
    </selector>
    

    您可以根据需要更改状态颜色和半径。现在,当您单击 CardView 时,颜色会发生变化。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-05-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-12
      相关资源
      最近更新 更多