Jetpack Compose : 使用 LinkAnnotation 替代 ClickableText

hefengbao 发布于 2024.08.24

文本点击事件:

ClickableText(
    text = AnnotatedString("Open Link"),
    onClick = { offset ->
        // handle click
    }
)

使用 buildAnnotatedString 实现:

Text(buildAnnotatedString {
    append("View my ")
    withLink(LinkAnnotation.Url(url = "https://joebirch.co")) {
        append("website")
    }
})

默认情况下,可点击文本以下划线修饰。

可通过 SpanStyle 修改:

Text(buildAnnotatedString {
    append("View my ")
    withLink(
        LinkAnnotation.Url(
            url = "https://joebirch.co",
            style = SpanStyle(color = MaterialTheme.colorScheme.primary)
        )
    ) {
        append("website")
    }
})

参考:

https://joebirch.co/android/migrating-from-the-clickabletext-composable-to-linkannotation/

Android    Android   Jetpack Compose Tutorial  

上一篇:初学者的项目实践指南:Realworld

下一篇:Https

有 0 条评论

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注