掌握Android 5.0新控件CardView的实现与兼容性处理

AI助手已提取文章相关产品:

本文还有配套的精品资源,点击获取 menu-r.4af5f7ec.gif

简介:随着Android 5.0的发布,Material Design风格的 CardView 控件成为提升UI美观度和用户体验的重要组件。通过 CardView 可以创建具有圆角和阴影效果的卡片式布局,增强信息层次感和视觉效果。本教程详细介绍如何在Android开发中使用 CardView ,包括布局文件中的配置、自定义样式、以及如何通过兼容包确保在旧版本Android设备上的运行。 CardView 的自定义包括背景颜色、阴影效果调整等,并支持嵌套各种布局结构。开发者可将其与 RecyclerView ListView 结合使用,打造动态的卡片列表。 CardView 的引入不仅美化了界面,还通过兼容库的使用提高了应用的适用性。
Android5.0新控件CardView的Demo和兼容包

1. CardView简介与引入背景

1.1 CardView的定义与特性

CardView是Android开发中一个用于展示信息的卡片式布局控件。它是由Android支持库提供的一个小组件,旨在统一不同Android版本和设备上的卡片表现,使得开发者能够方便地创建现代的、具有圆角和阴影效果的卡片布局。

1.2 CardView的引入背景

随着Material Design设计语言的普及,卡片式布局因其简洁美观、信息层次清晰而被广泛应用在移动应用中。传统的卡片布局实现方式较为复杂,不仅代码繁琐,而且难以保证在不同设备上的表现一致。CardView的出现,让卡片布局的实现变得简单快捷,也更好地适配了多种屏幕尺寸和系统版本。

1.3 CardView在应用开发中的作用

使用CardView可以轻松创建类似纸片的卡片布局,使得界面元素更加突出和吸引用户。它通常用于展示列表项、图片和文字等信息,能够有效地增强界面的视觉效果,并且可以通过简单配置实现美观的阴影和圆角效果,提升用户体验。

2. CardView在XML中的使用示例

2.1 CardView的基本XML配置

2.1.1 如何在布局文件中添加CardView

CardView是Material Design中的一个视图组件,它提供了一个带有圆角和阴影效果的卡片布局。在Android项目中添加CardView的XML配置是构建这些卡片布局的基础。首先,确保在项目的 build.gradle 文件中添加了CardView的依赖库,如下:

dependencies {
    implementation 'com.android.support:cardview-v7:28.0.0'
}

接着,在布局文件(通常是XML文件)中通过 <android.support.v7.widget.CardView> 标签添加CardView组件。一个简单的例子如下:

<android.support.v7.widget.CardView
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/card_view"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:cardCornerRadius="8dp"
    app:cardElevation="8dp">
    <!-- CardView 内容区域 -->
    <TextView
        android:id="@+id/text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="Hello CardView!"/>
</android.support.v7.widget.CardView>

在上述代码中, cardCornerRadius 定义了卡片的圆角大小,而 cardElevation 则为卡片添加了阴影效果。

2.1.2 CardView的基本属性和用法

CardView的基本属性为自定义卡片的外观提供了丰富的选择。主要属性包括:

  • cardCornerRadius : 用于定义卡片的圆角半径。
  • cardElevation : 定义卡片的阴影高度,影响阴影的模糊程度和大小。
  • cardBackgroundColor : 设置卡片的背景颜色。
  • contentPadding : 设置卡片内部内容的填充间距。
  • maxCardElevation : 设置卡片的最大阴影高度。

例如,若要改变卡片的背景颜色,可以设置 app:cardBackgroundColor 属性:

app:cardBackgroundColor="#FF5722"

通过这些基本属性的组合使用,你可以创建出具有吸引力的UI元素,提升应用程序的视觉效果和用户体验。

2.2 CardView的布局嵌套实例

2.2.1 嵌套简单布局的XML结构

在CardView中嵌套简单布局,如 LinearLayout TextView ,可以创建更丰富的层次结构。例如,使用垂直方向的 LinearLayout 作为CardView的内容:

<android.support.v7.widget.CardView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:cardCornerRadius="8dp"
    app:cardElevation="4dp">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:padding="16dp">

        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="Title"
            android:textSize="18sp"
            android:textStyle="bold"/>

        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="This is a simple CardView layout."
            android:textAppearance="?android:attr/textAppearanceListItemSmall"/>

    </LinearLayout>
</android.support.v7.widget.CardView>

此XML结构创建了一个带有标题和描述的卡片,其中的 LinearLayout 将两个 TextView 垂直排列。

2.2.2 嵌套复杂布局的XML结构

复杂布局的嵌套是为了实现更加丰富和个性化的UI设计。当使用像 GridLayout 或多个嵌套的 LinearLayout 来构建复杂布局时,可以创建类似网格或特殊设计的卡片。

<android.support.v7.widget.CardView
    android:layout_width="200dp"
    android:layout_height="200dp"
    app:cardCornerRadius="16dp"
    app:cardElevation="8dp">

    <GridLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:columnCount="2"
        android:rowCount="2"
        android:alignmentMode="alignMargins"
        android:padding="16dp">

        <!-- 在GridLayout中嵌入更多视图 -->

    </GridLayout>
</android.support.v7.widget.CardView>

此类嵌套布局允许开发者创建拥有多个元素和复杂结构的卡片,比如网格视图中的图像和文字。

在本节内容中,我们介绍了如何在XML布局中使用CardView,并探讨了基本和复杂布局的嵌套实例。接下来,我们继续深入了解CardView的自定义属性。

3. CardView自定义属性:padding, cardCornerRadius, cardElevation

3.1 padding属性的自定义和效果展示

3.1.1 padding属性的定义和使用

padding 属性是 CardView 提供的用于控制内容与卡片边缘距离的属性。通过设置 padding,我们可以定义卡片内容的内部空间,以便于放置图片、文本等内容时不至于紧贴卡片边缘,增加视觉上的舒适度和操作时的便利性。

在 XML 中自定义 padding 属性非常简单。以下是一个基本的例子:

<androidx.cardview.widget.CardView 
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:cardBackgroundColor="#FFFFFF"  // 卡片背景色
    app:cardCornerRadius="4dp"        // 卡片圆角
    app:cardElevation="2dp"           // 卡片阴影高度
    app:contentPadding="8dp">        // 卡片内容与边缘的间距

    <!-- 这里是卡片的内容部分 -->
    <!-- ... -->

</androidx.cardview.widget.CardView>

在这个例子中, app:contentPadding="8dp" 设置了卡片内容与卡片边缘的间距为 8dp。开发者可以根据实际的内容和布局需要,自行调整该属性值。

3.1.2 不同padding值对布局的影响

根据设计需求,padding 可以有不同的值。例如,如果卡片包含图片和文本,较小的 padding 可能会使文本覆盖到图片上,导致视觉效果和可读性差;而较大的 padding 则可能会让卡片看起来过于笨重,内容区域占比太小。

下表展示了不同 padding 值对实际布局的影响:

Padding 值 布局效果
4dp 内容紧贴边缘,紧凑型布局
8dp 内容与边缘有轻微间隔,视觉舒适度较好
16dp 内容与边缘间隔较大,卡片显得宽松
24dp 内容与边缘间隔更大,卡片显得非常宽松

通过调整 padding 的值,可以灵活地控制卡片内容的布局和视觉效果。开发者需要根据实际内容和设计要求,选择合适的 padding 值。

3.2 cardCornerRadius属性的自定义和效果展示

3.2.1 cardCornerRadius属性的定义和使用

cardCornerRadius 是用来定义卡片边缘的圆角大小的属性。它允许开发者通过设置一个维度值,来控制卡片四个角的圆润程度。在视觉设计中,适当的圆角可以增加卡片的美观度,使得 UI 看起来更加柔和。

在 XML 文件中,我们可以通过以下方式设置 cardCornerRadius

<androidx.cardview.widget.CardView 
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:cardBackgroundColor="#FFFFFF"
    app:cardCornerRadius="8dp"  // 设置圆角大小为8dp
    app:cardElevation="2dp"
    app:contentPadding="8dp">

    <!-- 这里是卡片的内容部分 -->
    <!-- ... -->

</androidx.cardview.widget.CardView>

在上面的代码示例中, app:cardCornerRadius="8dp" 表示卡片的四个角将拥有 8dp 的圆角。开发者可以根据设计要求,设定从 0dp(无圆角)到任意大小的圆角值。

3.2.2 圆角设计对UI的影响

cardCornerRadius 的设置直接影响着卡片的视觉效果,同时也会影响到卡片下方内容的可见度。过大或过小的圆角都会对卡片的整体外观产生不同的效果。

以下是一些常见的 cardCornerRadius 值对 UI 的影响:

cardCornerRadius 值 UI 影响
0dp 卡片呈现出直角,较为正式和严肃的风格
4dp 轻微的圆角,适用于多数现代和简洁的设计
16dp 明显的圆角,卡片显得柔和,适用于亲和力强的设计
卡片高度的一半 卡片呈现半圆形状,适用于需要突出圆润风格的设计

开发者在选择圆角大小时,需要考虑整体的应用风格、内容的呈现以及用户的使用习惯。

3.3 cardElevation属性的自定义和效果展示

3.3.1 cardElevation属性的定义和使用

cardElevation 是控制卡片阴影高度的属性,它决定了卡片在 Z 轴方向上的高度。通过调整这个属性值,可以实现卡片的立体感和层次感,为用户界面带来更为丰富的视觉效果。

在 XML 中设置 cardElevation 的语法如下:

<androidx.cardview.widget.CardView 
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:cardBackgroundColor="#FFFFFF"
    app:cardCornerRadius="8dp"
    app:cardElevation="4dp"  // 设置阴影高度为4dp
    app:contentPadding="8dp">

    <!-- 这里是卡片的内容部分 -->
    <!-- ... -->

</androidx.cardview.widget.CardView>

在这里, app:cardElevation="4dp" 表示卡片将有一个 4dp 高的阴影,可以提升卡片的立体感。阴影的高度影响卡片的视觉层次,通常来说,阴影越大,卡片看起来越“浮”于页面之上,视觉冲击力更强。

3.3.2 阴影效果的展示和调整

阴影效果的展示和调整对于 UI 的整体美观至关重要。调整 cardElevation 可以实现不同强度的阴影效果。合理的阴影高度能使卡片显得更加精致,而不合理的设置可能导致界面看起来过于杂乱或平淡。

下面是一些 cardElevation 的实际效果展示:

cardElevation 值 阴影效果 UI 影响
0dp 无阴影效果 卡片显得扁平,适合扁平化设计风格
2dp 轻微阴影效果 卡片具有轻微的立体感,适合多数设计
4dp 明显阴影效果 卡片立体感强,适合需要突出的卡片
8dp 更强阴影效果 卡片显得更为突出,适用于需要强调的场景

开发者可以通过调整 cardElevation 的值来实现不同风格的阴影效果,以此来满足不同的设计需求。

4. 兼容性处理及兼容包导入方法

4.1 分析CardView的兼容性问题

4.1.1 Android版本差异带来的问题

随着Android系统的快速发展,新的Android版本会引入一些新的特性和API,而老版本则可能不支持这些特性。对于开发者来说,这意味着需要在应用中处理不同版本间的兼容性问题。对于CardView来说,虽然它是Material Design组件的一部分,并且在API 21(Android 5.0 Lollipop)及以上版本中有原生支持,但在早期版本中使用CardView则需要额外的步骤。

解决方案

在早期版本中,可以使用AppCompat库中的CardView来确保兼容性。AppCompat是一个支持库,它允许开发者使用最新的材料设计组件在老版本的Android系统上。开发者需要引入对应的库,并且在项目中进行适当的配置,以保证CardView能在所有Android设备上正常显示。

4.1.2 不同设备厂商系统的兼容性问题

除了Android版本差异带来的兼容性问题外,不同设备制造商对Android系统的定制,也会引入兼容性问题。例如,一些厂商可能会改变底层的视图渲染机制,或者添加独特的系统功能,这都可能影响到CardView的表现。

解决方案

通常,解决这类问题需要对目标设备进行充分的测试,并根据实际情况对应用进行调整。有时候,可能需要使用特定的布局属性或者编程技巧来规避兼容性问题。此外,开发者需要确保在应用中正确导入并使用了兼容包,以支持这些特定的设备。

4.2 兼容包的导入和配置

4.2.1 添加兼容包到项目中

为了使用CardView并在所有Android设备上保持一致性,开发者需要添加AppCompat库作为项目的依赖。这可以通过在项目的build.gradle文件中添加对应的依赖项来实现。

操作步骤

打开项目根目录下的 build.gradle 文件,然后在dependencies闭包内添加以下依赖项:

dependencies {
    implementation 'androidx.appcompat:appcompat:1.2.0'
    implementation 'com.google.android.material:material:1.3.0'
}

确保在添加依赖后同步了Gradle文件,这样IDE就可以下载并配置所需的库文件了。

4.2.2 兼容包的具体配置步骤

添加了兼容库后,通常还需要在项目的AndroidManifest.xml文件中进行特定的配置,以确保兼容库可以正常工作。

操作步骤

打开 AndroidManifest.xml 文件,在 <application> 标签内添加以下元数据项:

<application
    ...
    android:theme="@style/AppTheme">
    <!-- 添加以下元数据 -->
    <meta-data
        android:name="com.google.android.material.floatingactionbutton RidleyTheme"
        android:value="@style/Widget.MaterialComponents.FloatingActionButton" />
</application>

这段代码定义了在应用中引用浮动操作按钮时需要使用的样式。通过这样的配置,应用能够在所有支持的Android设备上提供一致的用户体验。

在配置了兼容包和AppCompat主题之后,开发者可以开始在应用中自由地使用CardView了。不过,对于那些需要更深层次自定义的场景,开发者仍需关注兼容性问题,例如适配不同屏幕尺寸、分辨率等,并进行相应的调整和测试。

5. CardView的进一步自定义:背景颜色、阴影效果

5.1 CardView背景颜色的自定义

5.1.1 如何改变CardView的背景颜色

自定义背景颜色是通过修改CardView组件的 cardBackgroundColor 属性来实现的。通常情况下,我们可以在XML布局文件中直接设置这个属性,以便于直观地看到颜色的变化。以下是通过XML来改变CardView背景颜色的代码示例:

<androidx.cardview.widget.CardView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:cardBackgroundColor="@color/purple_500">
    <!-- Card content goes here -->
</androidx.cardview.widget.CardView>

在这个例子中, @color/purple_500 是使用了颜色资源来设置背景颜色,您可以将其替换为任何您希望的颜色。

5.1.2 背景颜色自定义的效果展示

改变CardView的背景颜色对用户界面的影响是直接的。背景颜色不仅为卡片提供了视觉上的分隔,还能够在不同的设计主题中起到辅助作用。比如,在一个明亮的界面主题中,我们可以选择较深的颜色作为背景,而在一个暗色主题中,较浅的颜色则更为合适。自定义背景颜色能够帮助开发人员更好地适应设计规范或用户的需求。

5.2 CardView阴影效果的进一步调整

5.2.1 如何调整阴影的大小和透明度

阴影效果在CardView中通过 cardElevation 属性控制,这个属性定义了卡片的阴影深度。阴影的透明度可以通过调整 cardUseCompatPadding cardPreventCornerOverlap 属性来实现。以下是调整阴影大小和透明度的示例:

<androidx.cardview.widget.CardView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:cardElevation="10dp"
    app:cardUseCompatPadding="true"
    app:cardPreventCornerOverlap="false">
    <!-- Card content goes here -->
</androidx.cardview.widget.CardView>

在上述代码中, cardElevation 设置为10dp,意味着卡片阴影的深度为10dp。 cardUseCompatPadding 属性设置为 true 意味着CardView将添加内部padding来确保阴影不会因为视图的重叠而被裁剪掉。 cardPreventCornerOverlap 属性设置为 false 则允许卡片在重叠时显示阴影。

5.2.2 阴影效果在不同设备上的兼容展示

由于不同设备的屏幕密度和渲染效果不同,阴影效果可能在不同设备上展示有差异。为了确保阴影效果的统一性,开发者可以采用以下实践:

  • 在所有目标设备上测试阴影效果,检查不同屏幕密度和渲染器的效果。
  • 考虑到性能和一致性,合理选择 cardElevation 的值。
  • 使用兼容包确保最低版本设备也能显示阴影效果。

请注意,Android 5.0(API 级别 21)及以上版本原生支持阴影效果,而较早的版本可能需要引入兼容库来实现兼容。

代码块逻辑分析

在本小节代码示例中, app:cardElevation 属性用于设置阴影的高度,进而影响阴影的大小。阴影高度越高,阴影看起来就越明显,反之亦然。 app:cardUseCompatPadding 属性是确保在旧版本Android设备上兼容阴影显示的必要配置。当设置为 true 时,CardView会在内容周围添加额外的内边距,以防止由于阴影造成的重叠问题。 app:cardPreventCornerOverlap 属性用于控制是否防止卡片内容与卡片角重叠导致的视觉问题。当设置为 false 时,卡片阴影将不会被顶部内容遮挡。

属性名称 属性描述 参数说明
cardElevation 设置卡片阴影的深度。阴影高度越大,阴影效果越明显。 以dp为单位的浮点数
cardUseCompatPadding 为早期版本Android设备添加兼容性内边距,防止阴影在不同设备上显示不一致。 布尔值, true 为开启兼容内边距, false 为关闭
cardPreventCornerOverlap 防止卡片内容与卡片角重叠的问题。当设置为 false 时,可以更好地控制视觉效果。 布尔值, true 为防止重叠, false 为允许重叠

6. CardView嵌套其他布局的支持

随着移动应用界面设计的日趋复杂化,开发者需要更多的灵活性来组织布局,CardView作为一个强大的UI组件,其嵌套其他布局的能力就显得尤为重要。嵌套布局可以为我们的应用界面添加更多的层次感,增强视觉效果,同时保持代码结构的清晰。

6.1 CardView嵌套布局的基本原则

嵌套布局不仅可以提高界面的美观度,还可以让布局的管理更加方便。然而,如果不遵循一些基本原则,嵌套布局可能会导致性能问题,例如布局嵌套过深,可能会引起渲染效率的下降。

6.1.1 嵌套布局的XML配置技巧

在XML布局文件中,CardView可以像其他视图容器一样嵌套其他布局。为了保持性能,我们应当尽量减少布局的嵌套层级,并尽量利用好嵌套布局的特性来简化UI组件。

<androidx.cardview.widget.CardView
    android:id="@+id/cardView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_margin="8dp"
    app:cardCornerRadius="4dp"
    app:cardElevation="4dp">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:padding="8dp">

        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="嵌套LinearLayout示例"
            android:textSize="16sp" />

        <!-- 更多子视图 -->
    </LinearLayout>
</androidx.cardview.widget.CardView>

在上述示例中,我们创建了一个CardView,并在其中嵌套了一个垂直的LinearLayout。通过设置LinearLayout的属性来添加内容,这样既保持了代码的整洁性,也利用了CardView带来的阴影和圆角效果。

6.1.2 如何解决嵌套布局的常见问题

嵌套布局时可能会遇到的问题包括性能下降、布局过重、过度嵌套导致的难以调试等。解决这些问题的方法通常包括以下几点:

  1. 尽量减少布局层级,合并重复或相似的布局结构。
  2. 对于简单的布局层次,可以考虑使用 ConstraintLayout 来替代传统的嵌套布局,以优化性能。
  3. 在调试过程中使用 Android Studio 的 Layout Inspector 工具,它可以帮助你可视化地检查布局结构,发现并修复问题。
  4. 优化CardView内部布局的属性,如最小高度、内边距等,以避免不必要的布局开销。

6.2 CardView与常用布局的结合实例

6.2.1 CardView与LinearLayout的结合

LinearLayout是Android中最常用的布局之一。CardView与LinearLayout的结合使用,可以为列表项提供统一的卡片样式,提升界面美观性和一致性。

<androidx.cardview.widget.CardView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:cardCornerRadius="4dp"
    app:cardElevation="4dp">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:padding="8dp">

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

        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:orientation="vertical"
            android:paddingStart="16dp">

            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="卡片标题"
                android:textAppearance="@style/TextAppearance.AppCompat-Medium" />

            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="卡片内容描述"
                android:textAppearance="@style/TextAppearance.AppCompat" />
        </LinearLayout>
    </LinearLayout>
</androidx.cardview.widget.CardView>

这个布局示例中,我们创建了一个带有圆角和阴影的卡片,内部使用LinearLayout将图片和文本信息水平排列。这种结构在实现图文列表时非常常见且有效。

6.2.2 CardView与RelativeLayout的结合

与LinearLayout相比,RelativeLayout能够更灵活地控制视图位置,这在布局中非常有用,尤其是在需要对齐、偏移等效果时。结合CardView,我们可以轻松地创建复杂的布局。

<androidx.cardview.widget.CardView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:cardCornerRadius="4dp"
    app:cardElevation="4dp">

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:padding="8dp">

        <ImageView
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:layout_alignParentStart="true"
            android:layout_centerVertical="true"
            android:src="@drawable/ic_launcher_background" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toEndOf="@id/imageView"
            android:text="卡片标题"
            android:textAppearance="@style/TextAppearance.AppCompat-Medium" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@id/textViewTitle"
            android:layout_toEndOf="@id/imageView"
            android:text="卡片内容描述"
            android:textAppearance="@style/TextAppearance.AppCompat" />
    </RelativeLayout>
</androidx.cardview.widget.CardView>

这个RelativeLayout示例通过指定各种相对位置属性,如 layout_toEndOf layout_below ,实现了内部视图的位置精确控制。这种方式特别适用于创建复杂的、富有交互性的布局结构。

总之,通过合理利用CardView的嵌套布局支持,我们可以创建出既美观又实用的应用界面。在实际开发中,根据不同的布局需求选择最合适的布局类型,可以使我们的应用更上一层楼。

本文还有配套的精品资源,点击获取 menu-r.4af5f7ec.gif

简介:随着Android 5.0的发布,Material Design风格的 CardView 控件成为提升UI美观度和用户体验的重要组件。通过 CardView 可以创建具有圆角和阴影效果的卡片式布局,增强信息层次感和视觉效果。本教程详细介绍如何在Android开发中使用 CardView ,包括布局文件中的配置、自定义样式、以及如何通过兼容包确保在旧版本Android设备上的运行。 CardView 的自定义包括背景颜色、阴影效果调整等,并支持嵌套各种布局结构。开发者可将其与 RecyclerView ListView 结合使用,打造动态的卡片列表。 CardView 的引入不仅美化了界面,还通过兼容库的使用提高了应用的适用性。


本文还有配套的精品资源,点击获取
menu-r.4af5f7ec.gif

您可能感兴趣的与本文相关内容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值