jetpack compose —— Card

jetpack compose Card 组件提供了一种简单而强大的方式来呈现卡片式的用户界面。

一、什么是 Card 组件

二、基本用法

三、属性和修饰符

四、嵌套使用和复杂布局


一、什么是 Card 组件

Card 是 Jetpack Compose 中的一个常用组件,用于呈现卡片式的用户界面。它提供了一个容器,可以将其他组件包裹在其中,同时为这些组件提供背景、边框和阴影效果,使界面看起来更加吸引人。

二、基本用法

在 Jetpack Compose 中使用 Card 组件非常简单。以下是一个基本的示例:

@Preview
@Composable
fun CardDemo(){
    Card(
        modifier = Modifier
            .padding(16.dp)
            .width(100.dp),
        elevation = 4.dp
    ){
      Text(text = "Hello,Card!")  
    }
}

 这段代码将创建一个简单的 Card 组件,其中包含一个文本组件。通过 modifier 属性,我们可以设置 Card 的边距和宽度占满父容器。通过 elevation 属性,我们可以设置 Card 的阴影效果。

三、属性和修饰符

Card 组件提供了多种属性和修饰符,用于自定义其外观和行为。

以下是一些常用的属性和修饰符:

  1. shape:用于设置 Card 的形状,可以选择圆角矩形、圆形等。

  2. backgroundColor:用于设置 Card 的背景色。

  3. contentColor:用于设置 Card 内容的颜色,例如文本颜色。

  4. modifier:用于应用额外的修饰符,如填充、边距等。

案例:

@Preview
@Composable
fun CardDemo(){
    Card(
        modifier = Modifier
            .padding(16.dp)
            .width(100.dp)
            .clickable {
                       println("Hello  Card")
            },
        elevation = 4.dp,
        shape = Shapes.small,
        backgroundColor = Color.Red,
        contentColor = Color.Blue,
    ){
      Text(text = "Hello,Card!")  
    }
}

 在这个示例中,我们在 Card 的 Modifier 中使用了 Modifier.clickable() 函数,并传递一个点击事件处理函数作为参数。当用户点击 Card 时,该点击事件处理函数将被触发执行。

四、嵌套使用和复杂布局

Card 组件可以嵌套使用,从而创建更复杂的布局结构。我们可以在一个 Card 中嵌套其他组件,形成更多层次的卡片式界面。

@Preview
@Composable
fun CardDemo1(){
    Card(modifier = Modifier.padding(16.dp)
        .clickable {
            println("点击外围的card")
        }) {
        Column(modifier= Modifier.padding(16.dp)){
            Text(text = "Title")
            Text(text = "Description")
            Card(modifier = Modifier.padding(top = 16.dp)) {
                Text(text = "Nested Card")
            }
        }
    }
}

 

在这个示例中,我们在外层 Card 中嵌套了一个 Column 和一个内层 Card,形成了更复杂的卡片布局。

最后,Card 是 Jetpack Compose 中常用的组件之一,提供了简单而强大的方式来呈现卡片式的用户界面。通过合理运用属性和修饰符,我们可以轻松创建各种不同样式和结构的卡片布局,以满足不同的设计需求。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/28203.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Javaweb学习路线(3)——SpringBoot入门、HTTP协议与Tomcat服务器

一、SpringBoot入门 &#xff08;一&#xff09;第一个Springboot案例 1、创建Springboot工程&#xff0c;添加依赖。 2、定义类&#xff0c;添加方法并添加注释 3、运行测试。 pom.xml&#xff08;框架自动生成&#xff09; <?xml version"1.0" encoding&quo…

不同等级的Pads工程师,薪资差距有多大?

作为一种广泛应用在PCB设计的EDA工具&#xff0c;Pads软件在中国的电子设计行业中有着重要地位&#xff0c;尤其是不同等级的Pads工程师&#xff0c;在薪资、工作范围等有很大的差异&#xff0c;本文将从中国出发&#xff0c;多方面分析对比不同等级的Pads工程师&#xff0c;希…

24个Jvm面试题总结及答案

1.什么是Java虚拟机&#xff1f;为什么Java被称作是“平台无关的编程语言”&#xff1f; Java虚拟机是一个可以执行Java字节码的虚拟机进程。Java源文件被编译成能被Java虚拟机执行的字节码文件。 Java被设计成允许应用程序可以运行在任意的平台&#xff0c;而不需要程序员为每…

【VMware】虚拟机安装centos7

目录 一、创建虚拟机 1、自定义 2、选择需要安装的操作系统 3、选择虚拟机安装位置 4、选择处理器配置&#xff08;可先默认&#xff09; 5、设置虚拟内存&#xff08;一般4096&#xff09; 6、选择网络连接方式 7、选择I/O控制器 8、选择磁盘类型 9、选择磁盘 10、指定磁盘容…

国内云服务器全面对比

想要领取优惠券购买云服务可以前往我的云服务器领券购买。 经过疫情三年&#xff0c;大多行业开始复苏&#xff0c;企业开始布局以后得发展&#xff0c;云服务器作为企业发展几乎是必须的&#xff0c;一个企业从无到有&#xff0c;要经历很多&#xff0c;比如企业官网搭建&…

解密混沌工程——混沌工程价值

在数字化转型、十四五规划的大背景 下&#xff0c;大规模上云、分布式的核心改造等“云化”逐渐走进企业。 但是&#xff0c;云化的发展&#xff0c;使企业系统的复杂度呈指数级增长&#xff0c;故障越来越多。 企业在数字化转型中拥抱云计算、 信创国产化、分布式核心等新技…

DVWA-Command Injection

大约 命令注入攻击的目的是在易受攻击的应用程序中注入和执行攻击者指定的命令。 在这种情况下&#xff0c;执行不需要的系统命令的应用程序就像一个伪系统外壳&#xff0c;攻击者可能会使用它 作为任何授权的系统用户。但是&#xff0c;命令的执行权限和环境与 Web 服务具有的…

JVM 调优分析 如何进行JVM调优

文章目录 1.为什么需要进行JVM调优&#xff1f;2.什么情况下可能需要JVM调优3.JVM调优参数4.JVM调优参数设置参考5.JVM内部结构1. 类加载器&#xff08;Class Loader&#xff09;2. 运行时数据区&#xff08;Runtime Data Area&#xff09;3. 垃圾收集器&#xff08;Garbage Co…

jmeter如何将上一个请求的结果作为下一个请求的参数

目录 1、简介 2、用途 3、下载、简单应用 4、如何将上一个请求的结果作为下一个请求的参数 1、简介 在JMeter中&#xff0c;可以通过使用变量来将上一个请求的结果作为下一个请求的参数传递。 ApacheJMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测…

adb shell 调试 Android 串口 百度AI也很

在 Android 平台上进行串口调试需要使用 Android Debug Bridge (ADB) 工具。ADB 是一个命令行工具&#xff0c;可以通过 USB 连接 Android 设备&#xff0c;并执行各种命令来调试应用程序。 以下是使用 ADB shell 进行 Android 串口调试的步骤&#xff1a; 连接 Android 设备…

低代码开发平台介绍

低代码开发平台近两年发展迅猛&#xff0c;并迅速渗透到各个细分领域。本文简要介绍低代码开发的概念以及特性&#xff0c;并结合低代码开发的应用场景介绍两个低代码开发平台。 1、低代码开发概念 1.1 低代码开发介绍 低代码开发&#xff08;Low-code Development&#xff0…

3D格式转换工具HOOPS Exchange​助力Zuken打造电子设计自动化产品

行业&#xff1a;电子制造 挑战&#xff1a;对制造商来说&#xff0c;电子设计变得越来越复杂 - 电气和机械设计的融合需要将二维和三维数据结合起来 - 需要提供对多种不同CAD格式的支持 解决方案&#xff1a;HOOPS Exchange是用于快速、准确的CAD数据转换的领先SDK&#xff…

vue Electron ArcGis 桌面应用 Sqllite3 node-grp:老旧项目的起死回生

最近接收了一个三四年前做的项目。主要技术栈就是vue2electronsqllite3node-gyp。看到这个技术栈&#xff0c;基本可以知道感知这个项目的关键词&#xff1a;vue、Gis地图、本地数据库、桌面客户端。顿时深感亚历山大。 不多说&#xff0c;开干。 第一步&#xff0c;查看项目…

商家必备!餐饮外卖回评话术

我认识过很多做餐饮外卖的商家&#xff0c;他们总是有相同苦恼的问题&#xff0c;尤其是回复食客们的评价&#xff0c;尤其是差评。小编在这里就为各位商家提供了一些餐饮外卖回评的话术&#xff0c;希望能给有需要的小伙伴们提供帮助哦~ 一、好评回复模板 1.叮~您的好评我们已…

什么是大数据,常见的大数据应用领域?

现在大数据发展的如火如荼&#xff0c;也有不少小伙伴对于什么是大数据比较感兴趣&#xff0c;那么大数据在比较官方的定义是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合&#xff0c;是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力…

Linux -- 用户和组

目录 一、root用户&#xff08;超级管理员&#xff09; 1.1 切换用户命令&#xff1a;su 和 exit 命令 1.2 sudo命令 二、用户、用户组 2.1 用户组管理 2.1.1 创建用户组 2.1.2 删除用户组 2.2 用户管理 2.2.1 创建用户 2.2.2 删除用户 2.2.3 查看用户所属组 2.2.…

ReentrantLock实现原理-条件锁

在前两篇文章中&#xff0c;我们了解了ReentrantLock内部公平锁和非公平锁的实现原理&#xff0c;可以知道其底层基于AQS&#xff0c;使用双向链表实现&#xff0c;同时在线程间通信方式(2)中我们了解到ReentrantLock也是支持条件锁的&#xff0c;接下来我们来看下&#xff0c;…

安卓期末考试知识总结(2)

文章目录 第四章&#xff1a;程序活动单元Activity四大组件Activity生命周期Activity的启动模式standardsingleTopsingleInstancesingleTask IntentIntentFilterActivity之间的数据传递putExtra()方法传递数据Bundle类传递数据Activity之间的数据回传 练习总结 第四章&#xff…

如何管理与改进低质供应商?帮助供应商提升自身质量能力?

管理和改进低质量的供应商可能是一项具有挑战性的任务&#xff0c;但与他们合作以提高他们的能力是可能的。可以采取一些步骤来管理和帮助提高供应商的质量&#xff1a; 确定根本原因&#xff1a;了解供应商产品或服务质量低下的原因。对他们的流程、资源和能力进行全面评估&am…

EFDC建模方法及在地表水环境评价、水源地划分、排污口论证应用

目录 专题一、软件安装 专题二、EFDC模型讲解 专题三、一维河流模拟实操 专题四、建模前处理 专题五、EFDC网格剖分介绍 专题六、EFDC二维湖库水动力模拟/非保守染色剂模拟 专题七、EFDC水质模型参数及原理介绍 专题八、EFDC一、二、三维湖库水质模拟 专题九、基于EFD…