Преобразование макета ограничений XML в Jetpack Compose — стиль цепочки, смещениеAndroid

Форум для тех, кто программирует под Android
Гость
Преобразование макета ограничений XML в Jetpack Compose — стиль цепочки, смещение

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

Я пытаюсь создать определенный макет с двумя представлениями: TextView и ImageView. TextView является динамическим, то есть длина текста может варьироваться. Если длина текста меньше ширины устройства, ImageView должен быть выровнен по концу TextView. Однако если длина текста превышает ширину устройства, ImageView должен располагаться в конце ширины устройства. В зависимости от содержимого текст может занимать несколько строк.
Я только начинаю работать с Jetpack Compose и создал макет с помощью XML ConstraintLayout. Я пытаюсь преобразовать этот макет в Jetpack Compose, но не уверен насчет эквивалентных методов для Layout_constraintHorizontal_bias, Layout_constraintHorizontal_chainStyle и Layout_constrainedWidth в Jetpack Compose.
Вот полный XML-код, с которым я работаю:







Я пробовал:
@Composable
fun CustomLayout(inputText: String) {
ConstraintLayout(modifier = Modifier.fillMaxWidth()) {
val (text, image) = createRefs()

val chain = createHorizontalChain(text,image, chainStyle = ChainStyle.Packed(0F))
constrain(chain){
start.linkTo(text.start)
end.linkTo(image.end)
}
Text(
text = inputText,
modifier = Modifier
.constrainAs(text) {
start.linkTo(parent.start)
end.linkTo(image.start)
top.linkTo(parent.top)
width = Dimension.preferredWrapContent
}.wrapContentSize()
)

Image(
painter = painterResource(id = R.drawable.ic_information_grey),
contentDescription = null,
modifier = Modifier
.size(14.dp)
.constrainAs(image) {
end.linkTo(parent.end)
top.linkTo(text.top)
start.linkTo(text.end)
width = Dimension.wrapContent
}.wrapContentSize()
)
}
}


Подробнее здесь: https://stackoverflow.com/questions/783 ... style-bias

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