K自绘布局(扩展)
自定义测量与 Canvas;能不用则不用。
Layout / Modifier.layout
概念
三件套不够时,自定义测量与放置。成本高,主线优先嵌套 Column/Row/Box。
▶ 简单自定义排列
Modifier.layout { measurable, constraints ->
val placeable = measurable.measure(constraints)
layout(placeable.width, placeable.height) {
placeable.place(0, 0)
}
}
Canvas / drawBehind
自绘图表、装饰线。XML ≈ 自定义 View.onDraw。
Canvas(Modifier.size(100.dp)) {
drawCircle(Color.Red, radius = size.minDimension / 2)
}