If I center text then everything works fine... but...
# compose
c
If I center text then everything works fine... but if I try to a long piece of text then I get a poorly cut off piece of text. Am I doing something wrong or is this a bug in compose? Code in thread.
Left "working" code:
Copy code
Row(modifier = Modifier.fillMaxWidth()) {
                    BoxWithText(
                        Modifier.weight(1f),
                        "Abc ".repeat(1),
                    )
                    BoxWithText(
                        Modifier.weight(1f),
                        "Lorem ipsum dolor sit amet",
                    )
                }
Right "broken" code:
Copy code
Row(modifier = Modifier.fillMaxWidth()) {
                    BoxWithText(
                        Modifier.weight(1f),
                        "Abc ".repeat(1),
                    )
                    BoxWithText(
                        Modifier.weight(1f),
                        "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed nibh lacus, finibus vitae nulla ut, tincidunt fringilla arcu. Duis vestibulum ligula quis blandit condimentum. Nam efficitur lorem et velit pellentesque viverra. Etiam vitae lacinia urna. Nullam a rutrum urna, at hendrerit purus. Donec nec dui nec lacus facilisis bibendum in nec risus. Sed convallis eu orci sit amet ullamcorper. Sed fermentum tristique lectus, at lacinia dolor ultricies vitae. Donec id interdum orci. Sed ac sapien ut ipsum accumsan tristique. Morbi mollis eleifend hendrerit. Curabitur eget mi auctor, maximus dui ut, pellentesque ante. Aliquam molestie sagittis euismod.",
                    )
                }
So you can see the only difference is the fact that theres a longer piece of text.
Also here is BoxWithText
Copy code
@Composable
fun BoxWithText(
    modifier: Modifier = Modifier,
    text: String,
) {
    Card(
        modifier = modifier
            .padding(horizontal = 16.dp),
    ) {
        Column {
            Box(
                modifier = Modifier
                    .aspectRatio(16 / 9F)
                    .background(Color.Blue)
                    .fillMaxWidth()
            )
            Text(
                text,
                maxLines = 1,
                textAlign = TextAlign.Center,
                overflow = TextOverflow.Ellipsis,
                modifier = Modifier
                    .fillMaxWidth()
                    .padding(vertical = 32.dp, horizontal = 8.dp)
            )
        }
    }
}
a
Because you set maxLines = 1
✔️ 1