Android Material Design 中的 CardView 详解

阅读时长 7 分钟读完

简介

在Android Material Design中,CardView是一个可以让应用程序的界面拥有更好的层次感的控件。它能够创建一个卡片式的界面,使其中的元素看起来更加连贯和统一。CardView拥有多种自定义属性,可以用来设置阴影、背景、圆角半径等等。

如何使用

首先,需要在build.gradle中引入依赖:

在布局文件中,可以像这样使用CardView:

-- -------------------- ---- -------
----------------------------------
    -----------------------------------
    ------------------------------------
    --------------------------
    ------------------------

    ---- ------------ ---

------------------------------------

其中,cardCornerRadius属性用来设置圆角半径,cardElevation属性用来设置阴影高度。

在CardView中可以添加任何内容,如TextView、ImageView等等,也可以嵌套在其他布局中。需要注意的是,CardView本身并不会对内容进行任何样式设置,因此需要对内容进行样式设置。

自定义属性

CardView拥有多种自定义属性:

属性名 属性说明
cardBackgroundColor 卡片的背景颜色
cardCornerRadius 卡片的圆角半径
cardElevation 卡片的阴影高度
cardMaxElevation 卡片的最大阴影高度
cardUseCompatPadding 是否使用CompatPadding兼容性包添加填充
cardPreventCornerOverlap 是否避免圆角重叠
contentPadding 卡片内容的内边距
contentPaddingLeft 卡片内容的左内边距
contentPaddingTop 卡片内容的上内边距
contentPaddingRight 卡片内容的右内边距
contentPaddingBottom 卡片内容的下内边距
android:padding 卡片的全局内边距,优先级低于contentPadding
app:cardUseCompatPadding 是否使用兼容性包的填充
app:cardPreventCornerOverlap 是否避免圆角重叠
app:cardCornerRadius 卡片的圆角半径,优先级高于android:radius
app:cardElevation 卡片的阴影高度
app:cardMaxElevation 卡片的最大阴影高度

示例代码

下面是一个使用CardView的示例代码:

-- -------------------- ---- -------
----- ------------- ------------------
--------------- ----------------------------------------------------------
    ---------------------------------------------------
    -----------------------------------
    -------------------------------------

    ----------------------------------
        ---------------------------
        -----------------------------------
        ------------------------------------
        -------------------------------
        --------------------------------
        ---------------------------------
        ----------------------------------
        --------------------------
        ------------------------

        -------------
            -----------------------------------
            ------------------------------------
            ---------------------------------
            ----------------------
            ---------------------------------

            ----------
                ----------------------------
                ---------------------------
                ----------------------------
                -------------------------------------

            ---------
                ---------------------------
                --------------------------
                ------------------------------------
                -------------------------
                --------------------------------
                ---------------------------
                -------------------------

        ---------------

    ------------------------------------

-----------------

效果如下:

总结

CardView是Android Material Design中的一个重要控件,能够为应用程序的UI提供更加具有层次感的卡片式界面。通过设置不同的属性,可以为CardView添加背景、圆角半径、阴影等样式。在使用时需要注意样式的细节和内容的自定义。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/65a4fccaadd4f0e0ffd5d7ec

纠错
反馈