Jetpack Compose 初体验(上),retrofit原理面试

本文介绍了Jetpack Compose中关于主题、颜色和字体排版的使用。通过示例展示了如何自定义颜色、字体样式,并创建Material Design主题。文章还提及了Compose对颜色和内容颜色的处理,以及懒加载列表的实现。
摘要由CSDN通过智能技术生成

声明 Typography 对象,然后给 Text 添加 style 属性,来控制文字的样式。

@Preview(showBackground = true)
@Composable
fun VerticalText() {
val typography = MaterialTheme.typography
Column(
modifier = Modifier.padding(16.dp)
) {
Image(
painter = painterResource(id = R.drawable.hello_world_new_black),
contentDescription = null,
modifier = Modifier
.width(126.dp)
.height(62.dp)
.clip(shape = RoundedCornerShape(4.dp)),
contentScale = ContentScale.Inside
)

Spacer(modifier = Modifier.height(16.dp))

Text(“Hello World!”, style = typography.h3)
Text(“Hello Again World!”, style = typography.body1)
Text(“How old are you, World!”, style = typography.body2)
}
}

Typography 提供如下预设属性,囊括标题、子标题、段落体、按钮等。

image-20210420225524291.png

最终效果如下:

image-20210420225406851.png

怎么样,是不是主次开始变得分明了?结构变得清晰了?情节展开得顺滑了?故事开始自然了?……

当然,其他的诸如最大行数、字体、对齐方式等都可以被配置。

二、主题

基本布局已经差不多啦,那么我们再来搞一些共性的东西,就像我们黄种人都有一样的肤色——散在土地里的黄,有种顽强,非常东方……

以前的 View 系统其实也有关于 theme 的定义,那些被定义的 style,在官方定义的一系列 theme 的基础上加以扩展,形成我们 app 的主题。

Compose 框架提供了 Material Design 的实现,Material Design Theme 自然也被应用到 Compose 中,Material Design Theme 包括了对颜色、文本样式和形状等属性的定义,咱们自定义这些属性后,包括 button、cards、switches 等控件都会相应的改变它们的默认样式。

1.颜色

颜色在前端开发中真的是无处不在了,Color 可以帮助我们快速地构建颜色模型。

你可以泡着吃:

val red = Color(0xffff0000)

可以扭着吃:

val blue = Color(red = 0f, green = 0f, blue = 1f)

欸,你还可以干吃:

val black = Color.Black

只要你喜欢,你甚至可以空翻360度加转体一周半的时候吃:

// 我不会空翻,也不会转体,期待你的表现,加油!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值