目标
我想在可用空间中容纳尽可能多的项目,并在末尾添加“+{num}”徽章以指示是否还有更多项目。像下图这样的东西。
问题
由于事先不知道物品(即本例中的筹码)的数量和大小以及可用空间,因此很难确切地知道可以容纳多少筹码。此外,Compose 仅对子项进行一次测量并立即进行布局。
我尝试过的
我尝试了以下方法,但还没有完全实现。
@Composable
fun MainScreen() {
Column {
val states = arrayOf(
"NY", "CA", "NV", "PA", "AZ", "AK", "NE", "CT", "CO", "FL", "IL", "KS", "WA"
)
var chipCount by remember { mutableStateOf(0) }
Row(
modifier = Modifier
.padding(horizontal = 16.dp)
.wrapContentHeight(),
verticalAlignment = Alignment.CenterVertically
) {
ChipRow(
modifier = Modifier
.padding(end = 4.dp)
.weight(1f, fill = false),
onPlacementComplete = { chipCount = it }
) {
for (state in states) {
Chip(
modifier = Modifier …Run Code Online (Sandbox Code Playgroud)