android - 在 Jetpack Compose 中选择要省略的文本

标签 android android-jetpack-compose android-jetpack-compose-text

以免将我的情况简化为当前:

Row(
    modifier = Modifier
        .background(Color.Red),
) {
    Text(
        text = ELLIPSIZE_THIS_TEXT,
        maxLines = 1,
        overflow = TextOverflow.Ellipsis,
    )
    Text(
        text = LEAVE_THIS_TEXT_NOT_ELLIPSIZED,
        maxLines = 1,
        overflow = TextOverflow.Visible,
    )
}

enter image description here

enter image description here

如果我将权重(1f)添加到第一个文本修饰符,它会按预期工作,但行占据了所有行。但我的目标是只占据所需的位置,如果我没有足够的位置 - 省略第一个文本。

enter image description here

enter image description here

我需要图像 2 和 3 的行为。

最佳答案

您可以为此使用 fill 属性。将其设置为 false 将导致文本较小时换行,如果文本较大则省略文本。试试这个。

Row(
    modifier = modifier
        .background(Color.Red).padding(10.dp),
) {
    Text(
        text = "Jetpack Compose Ui Tool-kit",
        maxLines = 1,
        overflow = TextOverflow.Ellipsis,
        modifier=Modifier.weight(1f, fill = false)
    )
    Spacer(modifier = Modifier.width(12.dp))
    Text(
        text = "LEAVE_THIS_TEXT",
        maxLines = 1,
        overflow = TextOverflow.Visible,
    )
}

关于android - 在 Jetpack Compose 中选择要省略的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72739333/

相关文章:

android - jetpack compose 中是否有 'touch delegate' 等效项?

android - 撰写 : Create Text with Circle Background

android - 如何获取 Android 崩溃日志?

android - Jetpack 撰写和导航 : Problems share ViewModel in nested graph

android - gradle copy as doLast 不工作

android - BackHandler 未退出 Android Studio 中的应用程序

android - Jetpack Compose 如何删除 EditText/TextField 下划线并保持光标?

android - Jetpack 撰写 : TextField clickable does not work

安卓日历 : onActivityResult's resultCode is always 0

android - 从 SQLite Blob 创建 Drawable 时出现问题