【问题标题】:How to align two texts from different rows in Jetpack Compose如何在 Jetpack Compose 中对齐来自不同行的两个文本
【发布时间】:2022-01-20 19:30:00
【问题描述】:

我在一行中有 3 个文本,然后在 LazyColumn 内的另一行中有另外三个文本

我想将第一行中心的“文本”与第二行的“15.025”值对齐

我用过

TextAlign.Center

在文本和

             horizontalArrangement = Arrangement.SpaceBetween,
             verticalAlignment = Alignment.CenterVertically

在 Row 上设置它,但它不起作用。请问有什么建议吗?

我是 Compose 的新手,很抱歉这个基本问题。

【问题讨论】:

  • 您能否展示有关这些可组合项(行、文本、LazyColumn)的代码?

标签: android kotlin alignment row android-jetpack-compose


【解决方案1】:

您可以使用Modifier.weight 使“左视图”的宽度等于“右视图”的宽度。它将使每一行的中间文本始终居中。

Row(Modifier.fillMaxWidth()) {
    Text(
        text = "Start",
        modifier = Modifier.weight(1f)
    )
    Text(
        text = "Center",
        textAlign = TextAlign.Center, // you can also fixed the width of center text
    )
    Text(
        text = "End",
        modifier = Modifier.weight(1f),
        textAlign = TextAlign.End
    )
}

如果你的文字内容总是很短,你也可以使用Box让中间的文字总是居中。

Box(Modifier.fillMaxWidth()) {
    Text(text = "Start", modifier = Modifier.align(Alignment.CenterStart))
    Text(text = "Center", modifier = Modifier.align(Alignment.Center))
    Text(text = "End", modifier = Modifier.align(Alignment.CenterEnd))
}

【讨论】:

  • 感谢您的回复,这确实按照我的要求将其居中,但我无法让 Box 代码正常工作。正如您所提到的,我的文字内容总是很短。但是我认为我没有很好地描述我想要的东西。在您的帮助下,我设法让它按照我想要的方式工作,我将发布结果和我用过的东西。
【解决方案2】:

这就是我想要实现的目标,在@Linh 的帮助下我做到了

我是这样做的。

Column(Modifier.fillMaxSize()) {
    Row(Modifier.fillMaxWidth()) {
        Text(
            text = "Start",
            modifier = Modifier.weight(1.5f),
            textAlign = TextAlign.Start
        )
        Text(
            text = "Center",
            modifier = Modifier.weight(1f),
            textAlign = TextAlign.Start
        )
        Text(
            text = "End",
            modifier = Modifier.weight(1f),
            textAlign = TextAlign.End
        )
    }
}

再次感谢您的帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-10-01
    • 1970-01-01
    • 2021-11-15
    • 2023-02-18
    • 1970-01-01
    • 2020-06-09
    • 2023-02-26
    • 1970-01-01
    相关资源
    最近更新 更多