学习源:https://www.bilibili.com/video/BV1ob4y1a7ad?p=4&vd_source=d61ce9acf622a878da40ae7bdecdaad9
(前期笔记粗糙,后期维护)
Compose布局
Compose标准布局
布局目标:
1.实现高性能
2.能够轻松编写自定义布局
3.在Compose中,通过避免多次测量布局子级可实现高性能,如果需要进行多次测量,Compose有一个特殊系统,即固有特征测量。
标准布局组件:
Column,Row,Box
修饰符:
修饰或扩充可组合项
CompositionLocal 隐式传参
Slots Api
比如titleBar,bottomBar......
槽位会在界面中留出空白区域
Scafford
使用列表
1.不需要滚动,使用Column或row
2.需要滚动,使用lazyColomn或lazyRow
滚动需要状态,rememberScrollState
条目数量已知
所有compose组件的更新,通过手指触摸事件改变状态,当状态对象发生改变时,Composable函数引用的对象会重组(重绘)
compose只负责界面的描述
条目数量未知
自定义布局,
使用layout修饰符修改元素的测量和布局方式