[Android 学习笔记] Jetpack Compose 解析

注意,Jetpack Compose中的控件被定义成一个一个的可组合函数,官方称这些控件为Composable,翻译成中文是“可组合项”,当强调它作为一个界面的一部分出现时,我会使用“控件”或“元素”之类的术语,要注意这三者之间的差别,我不知道有没有更好的词,所以我只能用这两个。当仅仅强调它是一个可组合项时,我会正常使用“可组合项”这个术语。

Layout系统

基本原则

元素需要通过一些约束来测量自己,这限制了一个元素的最大和最小的宽高。如果一个元素有子元素,那么它会测量每一个子元素来帮助决定自己的大小,每当一个元素向父元素报告了它自己的大小时,那么它就得到了相对于自身来放置自己的子元素的机会。

compose不允许多次测量,和Flutter一样,原因就是重复测量作用于UI这种树形结构的是时候会带来指数级的性能下降。当然有很多时候你需要重复获取子元素的一些信息,这会有其它的办法。

自定义 layout modifier

在compose中,Modifier提供了一系列函数,使用它们可以提供很多布局上的参数,比如padding等信息,通过自定义modifier来看下它是怎么工作的。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值