You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kotlin调用getString获取字符串资源仅返回部分内容是什么原因?

问题根因

调用Context.getString()读取字符串资源时,系统会自动剥离资源中未转义的HTML格式标签,仅返回纯文本内容。你在strings.xml中写的<a>标签被资源解析器识别为富文本格式标记,而非普通字符串内容,因此最终得到的是去掉标签的纯文本结果,无法拿到你期望的完整带标签内容。

修复方案

按需选择对应方案即可:

  • 如果你需要保留<a>标签的点击跳转等富文本能力,直接替换资源读取方法即可
    将getString()替换为getText(),该方法会保留系统支持的轻量HTML标签格式,返回带原生样式的CharSequence对象:
    val context = LocalContext.current
    val temp = context.getText(R.string.myRecommendContent)
    
  • 如果你就是要获取带HTML标签的原始字符串内容,需要先转义字符串资源里的标签
    将HTML标签的尖括号转义为对应实体字符,让系统把标签识别为普通文本内容,此时再调用getString()就能拿到完整的带标签字符串:
    <!-- strings.xml 中的资源定义 -->
    <string name="myRecommendContent">&lt;a href=&quot;#&quot;&gt;Recommend&lt;/a&gt; the app to a friend</string>
    

内容的提问来源于stack exchange,提问作者HelloCW

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 03:09:14