无法将海拔和半径添加到我的卡片视图

Can't add elevation and radius to my cardview

这是我的 UI 设计: UI Design

这是我的 xml 代码:

<LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:padding="40dp"
        android:layout_marginTop="32dp">

        <GridLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:columnOrderPreserved="false"
            android:alignmentMode="alignMargins"
            android:rowCount="2"
            android:columnCount="2"
            >

            <androidx.cardview.widget.CardView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_columnWeight="1"
                android:layout_rowWeight="1"
                android:layout_margin="12dp"
                app:cardCornerRadius="20dp" <--- :"(
                app:cardElevation="20dp" <--- :"(
                >

                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:layout_gravity="center"
                    android:clipToPadding="false"
                    android:padding="16dp"
                    android:orientation="vertical"
                    android:background="@drawable/rounded_square">

                    <ImageView
                        android:layout_width="80dp"
                        android:layout_height="80dp"
                        android:layout_gravity="center"
                        android:src="@drawable/dashPlaceholder"
                        />
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_marginTop="10dp"
                        android:textSize="8pt"
                        android:text="@string/findBengkel"/>
                </LinearLayout>

            </androidx.cardview.widget.CardView>

            ...


        </GridLayout>


    </LinearLayout>

这是结果: result

app:cardCornerRadius="20dp"
app:cardElevation="0dp"

并且还可以使用任何颜色的 backgroundTint 来确认其是否有效。我编辑了你的卡片,它成功了!

最重要的是管理好你的网格布局宽度和高度,否则你会遇到困难。

<androidx.cardview.widget.CardView
                    android:id="@+id/card_view_DailyTicket"
                    android:layout_width="150dp"
                    android:layout_height="150dp"
                    android:backgroundTint="@color/grey"
                    app:cardCornerRadius="10dp"
                    app:cardElevation="0dp">

                    <LinearLayout
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:gravity="center"
                        android:orientation="vertical">

                        <ImageView
                            android:layout_width="80dp"
                            android:layout_height="80dp"
                            android:src="@drawable/ic_baseline_directions_car_24" />

                        <TextView
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="Hourly Tickets"
                            android:textColor="@color/purple_700"
                            android:textStyle="bold" />

                    </LinearLayout>

                </androidx.cardview.widget.CardView>

试试这个。从我目前的项目。它的小菜一碟。运行良好。希望能有所帮助