将子元素的高度设置为 Row 包含的最高元素的高度

12

当子元素的高度不固定时,是否有可能强制一个行重新绘制其子元素以使其具有最高子元素的高度?

Row {
    Box {

    }

    Box {
        // second child has larger height, recompose first child to match height of the second child? 
    }
}

我最终得到的结果如下:问题 我认为这是因为Row逐个测量每个子项,但我希望第一个子项在第二个子项添加到Row后重新组合以匹配其高度。这可能吗?

这里的答案会对你有所帮助:https://dev59.com/ulEG5IYBdhLWcg3wXbnm#67141583 - Mayur Gajra
这个回答解决了你的问题吗?Jetpack Compose查找父视图的宽度/长度 - UnBanned
1个回答

32

您可以将Modifier.fillMaxHeight添加到所有子视图中,并通过在父视图中添加Modifier.height(IntrinsicSize.Max)来限制它们的高度为其中最大的一个:

Row(
    Modifier
        .padding(10.dp)
        .height(IntrinsicSize.Max)
) {
    Text(
        "First",
        fontSize = 20.sp,
        modifier = Modifier
            .fillMaxHeight()
            .background(Color.Gray)
    )
    Text(
        "Second",
        fontSize = 30.sp,
        modifier = Modifier
            .fillMaxHeight()
            .background(Color.LightGray)
    )
}

结果:


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接