Как выровнять два крайних элемента в строке слева и справа соответственно в Jetpack Compose?Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Как выровнять два крайних элемента в строке слева и справа соответственно в Jetpack Compose?

Сообщение Anonymous »

У меня есть компонент CardOption в Jetpack Compose:

Код: Выделить всё

@Composable
fun CardOption(text: String) {
Column(
horizontalAlignment = Alignment.Start,
modifier = Modifier.fillMaxWidth()
) {
// Title

@OptIn(ExperimentalTextApi::class)
val fontFamily =
FontFamily(
Font(
R.font.sfprotextbold,
//                        variationSettings = FontVariation.Settings(
//                            FontVariation.weight(950),
//                            FontVariation.width(30f),
//                            FontVariation.slant(-6f),
//                        )
)
)
val textStyle = TextStyle(
fontFamily = fontFamily
)

Divider(
color = Color.LightGray, // You can change the color as needed
thickness = 1.dp, // You can adjust the thickness as needed
modifier = Modifier.fillMaxWidth()
)

OutlinedButton(
colors = ButtonDefaults.outlinedButtonColors(Color.Transparent),
border = BorderStroke(0.dp, Color.Transparent),
modifier = Modifier
.fillMaxWidth()
.background(
color = Color.Transparent
)
.height(100.dp),
shape = RectangleShape,
onClick = {
}
) {
Row(modifier = Modifier.fillMaxWidth()
.padding(start = 16.dp, top = 16.dp, end = 16.dp, bottom = 16.dp),
verticalAlignment = Alignment.CenterVertically,
horizontalArrangement = Arrangement.SpaceBetween) {

Image(
painter = painterResource(id = R.drawable.black_credit_card), // Replace with your image resource
contentDescription = null, // Provide an appropriate content description
modifier = Modifier
.size(200.dp)
)

Text(
modifier = Modifier.padding(horizontal = 0.dp, vertical = 0.dp),
color = Color.Black,
text = text,
fontSize = 15.sp,
style=textStyle
)
Text(
modifier = Modifier.padding(horizontal = 0.dp, vertical = 0.dp),
color = Color.Black,
text = ">",
fontSize = 15.sp,
style=textStyle
)
}
}

Divider(
color = Color.LightGray, // You can change the color as needed
thickness = 1.dp, // You can adjust the thickness as needed
modifier = Modifier.fillMaxWidth()
)

}
}
В пользовательском интерфейсе оно отображается следующим образом:
[img]https://i.sstatic .net/hfPed.png[/img]

Однако я хочу, чтобы изображение было выровнено по крайнему левому краю (с небольшим отступом), а стрелка вправо («>») — по крайние правые. Я пробовал все виды аранжировок:
  • Arragement.Start
  • Arrangement.SpaceBetween
  • Arrangement.SpaceEvenly
  • Arrangement.End
но ничего не работает. Как мне этого добиться?

Подробнее здесь: https://stackoverflow.com/questions/774 ... espectivel
Ответить

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

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

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

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

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