Jetpack Compose简易入坑

前言

Jetpack compose即将推出正式版了,作为声明式UI,将会摈弃传统的xml布局的方式,从而避免反射创建View,将会极大提高View的加载效率,这就是趋势,不可对抗,所以学起来吧。

基础

我们先来看个小demo,体验一下Compose声明式UI的写法,下面demo是一个简单的TextView,打印一个Hello World:

@Composable
fun TextViewDemo() {
   Text(
        text = "Hello, world",
        color = Color.White,
        modifier = Modifier
            .background(Color.Red, RoundedCornerShape(8.dp)) // 添加圆角背景
            .padding(8.dp)
            .clickable { // 点击事件
                Log.e(TAG,"click me")
            }
    )
}
复制代码

效果如下:

示例

代码很简单,但是这是一个函数,用Composable修饰,就表示一个UI状态,只需要在MainActivity的onCreate()里面调用setContent()就可以:

class MainActivity : ComponentActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent { TextViewDemo() }
    }
}
复制代码

这就完事了。

到这里,我们可以了解到:

  • 1 Compose是声明式UI,不是传统的命令式UI,不是拿着View去setXXX(),而是用函数去描述一种UI状态。

  • 2 Compose采用的是属性细化和行为隔离的思想,比如demo里面,text就是Text直接的属性,而background是modifier的一个属性,因为像图片Image就没有text

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值