您可以在单个文本字符串中支持多个链接,以便在点击文本的某个子部分时执行不同的操作。
版本兼容性
此实现要求将项目 minSDK 设置为 API 级别 21 或更高级别。
依赖项
在单个字符串中显示多个链接
以下代码段会将多个可点击的链接嵌入到单个文本字符串中:
@Composable fun AnnotatedStringWithLinkSample() { // Display multiple links in the text Text( buildAnnotatedString { append("Go to the ") withLink( LinkAnnotation.Url( "https://developer.android.com/", TextLinkStyles(style = SpanStyle(color = Color.Blue)) ) ) { append("Android Developers ") } append("website, and check out the") withLink( LinkAnnotation.Url( "https://developer.android.com/jetpack/compose", TextLinkStyles(style = SpanStyle(color = Color.Green)) ) ) { append("Compose guidance") } append(".") } ) }
代码要点
- 使用
buildAnnotatedString
函数创建带注释的文本字符串。 - 通过将链接和文本样式作为
LinkAnnotation.Url()
函数(本身作为withLink()
函数的实参传递)的参数传递来指定链接和文本样式。LinkAnnotation.Url()
中内置了点击监听器。 - 在
withLink
函数的正文中使用append()
添加文本。 - 重复此过程以添加另一个链接文本片段。
结果
![一个包含两个不同链接的文本字符串](https://developer.android.google.cn/static/quick-guides/content/multiple-links.png?hl=zh-cn)
包含本指南的集合
本指南属于以下精选快速入门集合,这些集合涵盖了更广泛的 Android 开发目标:
![](https://developer.android.google.cn/static/images/quick-guides/collection-illustration.png?hl=zh-cn)
显示文本
文字对任何界面都属于核心内容。了解在应用中呈现文本的不同方式,以提供愉悦的用户体验。
有问题或反馈
请访问我们的常见问题解答页面,了解简短指南,或与我们联系,告诉我们您的想法。