Jetpack Compose 1,字节跳动技术整理

本文介绍了Jetpack Compose的声明式UI开发,包括UI刷新机制——智能重组,它通过局部刷新保证性能。此外,还讨论了状态管理、丰富的UI组件库、实时预览功能和兼容性。Compose与Flutter的比较展示了它们在声明式UI开发中的共性和差异,并展望了Compose的未来,如功能库支持的增加和生态系统的完善。
摘要由CSDN通过智能技术生成

总的来说,Jetpack Compose进行声明式UI开发时:

  1. 每个UI绘制会一个“纯函数”的方式运行;

  2. 当 状态State 变化时函数重新执行刷新UI。


UI刷新机制

=======================================================================

Jetpack Compose刷新UI的方式叫重组,即使用新数据再次调用UI绘制的函数。

@Composable

fun ClickCounter(clicks: Int, onClick: () -> Unit) {

Button(onClick = onClick) {

Text(“I’ve been clicked $clicks times”)

}

}

如上述按钮设置:每次点击该按钮时,调用方都会更新 clicks 的值。Compose 会再次调用 lambda 与 Text 函数以显示新值。

当数据变化时就会触发重组,如果每次都全量重组则会带来很多性能损耗。「类似React那种声明式U

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值