Преобразование макета ограничений 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
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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