Jetpack:028

编程入门 行业动态 更新时间:2024-10-15 20:25:13

<a href=https://www.elefans.com/category/jswz/34/1764313.html style=Jetpack:028"/>

Jetpack:028

文章目录

  • 1. 概念介绍
  • 2. 使用方法
    • 2.1 主要类型
    • 2.2 其它类型
  • 3. 示例代码
  • 4. 内容总结

我们在上一章回中介绍了Jetpack中Switch相关的内容,本章回中 主要介绍Card。闲话休提,让我们一起Talk Android Jetpack吧!

1. 概念介绍

我们在本章回中介绍的Card是一种组件,它提供了一块空间,空间内可以包含其它的组件,同时通过阴影给该空间创造出立体效果,看上去比较漂亮。它通常用在一些广告或者宣传场景中。

在早期的View体系中没有该组件,后来加入到了View中。我们在这里介绍的是jectpack compose中的Card,它和View中Card类似,它通过可组合函数Card来实现,我们将在本章回中详细介绍它的使用方法。

2. 使用方法

2.1 主要类型

可组合函数Card提供了相关的参数来控制自己,下面是常用的参数:

  • shape参数:主要控制Card的形状,常用来修改圆角;
  • border参数:主要用来控制Card外层的边框的宽度和颜色;
  • colors参数: 主要用来控制Card背景颜色和内部组件的颜色;
  • elevation参数:主要用来控制Card的阴影,值越大阴影效果越明显;
  • content参数:主要用来存放Card中包含的其它组件,可是包含多个组件;

上面这些参数中,前四个参数都是控制Card的风格,比如形状,颜色等。最后一个参数主要用来控制Card中包含的内容,它是lambda类型,因此通常使用尾lambda的语法,在函数体内添加被包含的其它组件,我们将在稍后的小节中通过示例代码来演示它的使用方法。此外,Card还有一个onClick参数,该参数主要用来响应点击事件,不过官方文档中不建议使用它,称它还在试验阶段。

2.2 其它类型

在compose中还有其它类型的Card,它们是在Card的基础上自带了一些样式,这样使用起来方便一些。下面是其它Card的分类介绍:

  • ElevatedCard:在默认Card的基础上淡化了背景颜色;
  • OutlinedCard:在默认Card的基础上淡化了背景,强化了边框;

这两种类型Card的用法和默认Card的用法完全相同,因此我们就不再介绍了,我们将在稍后的小节中通过示例代码来演示这两种Card的使用方法。

3. 示例代码

Card(//自带圆角,必须指定大小,否则使用wrap_content大小,默认灰色背景modifier = Modifier.background(color = Color.Blue).size(width = 300.dp, height = 100.dp).align(Alignment.CenterHorizontally),colors = CardDefaults.cardColors(containerColor = Color.Yellow,contentColor = Color.Red),//修改圆角的大小shape = RoundedCornerShape(18.dp),//修改边框的男宽度和颜色border = BorderStroke(width = 2.dp, color = Color.Red),//调整阴影的范围elevation = CardDefaults.cardElevation(defaultElevation = 8.dp)
) {Text(//两处对齐都不起作用modifier = Modifier.padding(8.dp),text = "Custom card",textAlign = TextAlign.Center)
}//背景比默认的淡一些
ElevatedCard (modifier = Modifier.size(width = 300.dp, height = 100.dp))
{Text(modifier = Modifier.padding(8.dp),text = "Elevated card",textAlign = TextAlign.Center)
}//自带一个边框
OutlinedCard (modifier = Modifier.size(width = 300.dp, height = 100.dp) ){Text(modifier = Modifier.padding(8.dp),text = "Outlined card",textAlign = TextAlign.Center)
}

上面的示例代码中演示Card的用法,并且在代码中添加了详细的注释。此外还包含另外两种不同形式Card的用法,编译并且运行上面的程序,可以得到以下运行效果

4. 内容总结

最后,我们对本章回的内容做统一的总结:

  • Card可以提供一个自带阴影和背景的局部空间;
  • Card通过相关的参数自身的风格,主要是颜色和背景;
  • Card还有两种子类型,它们只是风格不同,使用方法完全相同;

看官们,与Jetpack中导航相关的内容就介绍到这里,欢迎大家在评论区交流与讨论!

更多推荐

Jetpack:028

本文发布于:2023-11-16 16:56:33,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1627639.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:Jetpack

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!