Jetpack Compose: как перенести высоту родительского элемента при наличии смещенного содержимого

#android #height #offset #android-jetpack-compose

Вопрос:

Я хочу, чтобы высота родительского элемента, имеющего цвет фона, соответствовала высоте текстового содержимого, а не изображения, которое было смещено.

 Box(
    modifier = Modifier
        .padding(10.dp)
        .background(Color.Cyan, shape = RoundedCornerShape(8.dp))
        .clickable { }
) {
    Image(
        modifier = Modifier
            .width(224.dp)
            .align(alignment = Alignment.TopEnd)
            .offset(y = -88.dp, x = 50.dp),
        painter = painterResource(id = R.drawable.ic_pray),
        contentDescription = null,
    )
    Box(...)
}
 

Скриншот

Ответ №1:

Решена проблема путем применения IntrinsicSize.Min для модификатора высоты родительского элемента:

  Box(..., modifier = Modifier.height(IntrinsicSize.Min){
    Image(...)
    Box(...)
 

Я нашел это здесь: https://www.youtube.com/watch?v=zMKMwh9gZuIamp;ab_channel=AndroidDevelopers