10.3.6 用HTML标签格式化字符串资源
字符串资源支持一些HTML标签,因此,可以直接在字符串资源中使用这些HTML标签格式化字符串。
用HTML标签格式化的字符串资源
Welcome toAndroid!
字符串资源支持如下的HTML标签。
:粗体字。
:斜体字。
:带下划线的文字。
有时需要同时使用HTML标签和占位符格式化字符串,但使用String.format方法格式字符串,会忽略字符串中所有的HTML标签。为了使format方法可以格式化带HTML标签的字符,需要使用Html.fromHTML方法先处理一下字符串。下面来看一个完整的例子。
同时包含HTML标签和占位符的字符串资源:
Hello, %1$s! You have<b>%2$d new messages</b>.
注意 由于需要使用Html.fromHTML方法处理字符串,因此,HTML标签中的""可以直接使用)。
使用字符串资源的Java代码:
Resourcesres=getResources();
Stringtext=String.format(res.getString(R.string.welcome_messages), "lining", 20);
CharSequencestyledText=Html.fromHtml(text);
如果format的某个参数值包含HTML的特殊字符,如"
// username中包含HTML的特殊字符
StringescapedUsername=TextUtil.htmlEncode(username);
Resourcesres=getResources();
Stringtext=String.format(res.getString(R.string.welcome_messages), escapedUsername, mailCount);
CharSequencestyledText=Html.fromHtml(text);
【责任编辑:book TEL:(010)68476606】
点赞 0