在 Jetpack Compose 中向可点击文本添加图标

Add icon to ClickableText in JetpackCompose

我有一个在 ClickableText 中使用的 AnnotatedString:

val annotatedText = buildAnnotatedString {
        withStyle(
            style = SpanStyle(
                color = colorResource(R.color.blue_color))
            )
        ) {
            append(text = "Some text here")
        }

ClickableText( text = annotatedText, maxLines = 2...)

现在我想在我的 ClickableText 末尾添加一个图标。我该怎么做?

当前 ClickableText 不支持 inlineContent。我想你可以创建一个看起来和 ClickableText 一样的,除了它支持 inlineContent 添加图标 ().

@Composable
fun CustomClickableText(
    ...
    inlineContent: Map<String, InlineTextContent> = mapOf(),
) {
    ...

    BasicText(
        ...,
        inlineContent = inlineContent
    )
}

如果 ClickableText 将来支持 inlineContent,这种方式可以帮助您轻松重构。
或者,您可以使用 TextModifier.pointerInput 来处理点击事件。