首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >安卓系统中strings.xml字符串中的粗体字

安卓系统中strings.xml字符串中的粗体字
EN

Stack Overflow用户
提问于 2011-08-20 16:15:53
回答 6查看 145.2K关注 0票数 148

我在strings.xml的一个字符串中有一个很长的文本。我想要加粗并更改文本中某些单词的颜色。

我该怎么做呢?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2011-08-20 16:24:54

您基本上可以在字符串资源中使用html标记,如下所示:

代码语言:javascript
复制
<resource>
    <string name="styled_welcome_message">We are <b><i>so</i></b> glad to see you.</string>
</resources>

并使用Html.fromHtml或使用spannable,请检查我发布的链接。

类似的老问题:Is it possible to have multiple styles inside a TextView?

票数 231
EN

Stack Overflow用户

发布于 2017-09-11 19:18:11

在字符串资源中使用html标记:-

代码语言:javascript
复制
<resources>
<string name="string_resource_name"><![CDATA[<b> Your text </b>]]> </string>
</resources>

并从字符串资源中获取粗体文本,如:

代码语言:javascript
复制
private Spanned getSpannedText(String text) {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
            return Html.fromHtml(text, Html.FROM_HTML_MODE_COMPACT);
        } else {
            return Html.fromHtml(text);
        }
    }


 String s = format(context.getResources().getString(R.string.string_resource_name));
 textView.setText(getSpannedText(s));
票数 55
EN

Stack Overflow用户

发布于 2017-11-22 18:53:56

正如David Olsson所说,您可以在字符串资源中使用HTML:

代码语言:javascript
复制
<resource>
    <string name="my_string">A string with <i>actual</i> <b>formatting</b>!</string>
</resources>

然后,如果您使用getText(R.string.my_string)而不是getString(R.string.my_string),您将得到一个包含嵌入格式的CharSequence而不是String

票数 47
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7130619

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档