Как установить два поля в качестве фона в Compose без предварительной настройки их размераAndroid

Форум для тех, кто программирует под Android
Ответить
Гость
 Как установить два поля в качестве фона в Compose без предварительной настройки их размера

Сообщение Гость »

Я хотел бы создать составной элемент, состоящий из двухцветного фона и текстового поля сверху, если оно есть — см. изображение ниже. Этот вопрос очень похож, но я не хочу устанавливать размер Composable - я хочу, чтобы он рос вместе с размером текста посередине, и просто полагаюсь на отступы, чтобы показать два тона позади него.< /p>
Изображение

Проблема в том, что когда я не задаю размер, компонуемый объект просто занимает все возможное место в предварительном просмотре, а при отображении на устройстве фон полностью исчезает.
Это мой код:
Box(
contentAlignment = Alignment.Center,
modifier = Modifier
.fillMaxWidth()
.height(120.dp), // --> I don't want to set this!
) {
Column {
Box(
modifier = Modifier
.fillMaxWidth()
.weight(1f)
.background(color = Color.Red),
)
Box(
modifier = Modifier
.fillMaxWidth()
.weight(1f)
.background(color = Color.Yellow),
)
}
Box {
Text(
modifier = Modifier
.padding(24.dp)
.background(color = Color.Cyan),
text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed ac est sed dui posuere dictum. Pellentesque vitae gravida justo, vitae fermentum turpis. Fusce diam est, commodo eu volutpat id, dignissim nec ex. ",
)
}
}



Подробнее здесь: https://stackoverflow.com/questions/781 ... g-its-size
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»