【发布时间】:2012-05-25 20:05:38
【问题描述】:
我正在开发一个 android 应用程序,我想知道如何在常规粗体和斜体中添加少量单词,例如,我有一个带有文本 HELLOO 的文本视图,现在我想在文本视图中显示这样的文本
地狱OO
请告诉我如何通过android中的样式来实现这一点??
【问题讨论】:
标签: android xml android-layout styles
我正在开发一个 android 应用程序,我想知道如何在常规粗体和斜体中添加少量单词,例如,我有一个带有文本 HELLOO 的文本视图,现在我想在文本视图中显示这样的文本
地狱OO
请告诉我如何通过android中的样式来实现这一点??
【问题讨论】:
标签: android xml android-layout styles
<b> 已弃用。使用<strong> 和<em> 而不是<i>。
text1.setText(Html.fromHtml("<strong>bold text</strong> normal text <em>italic text</em> "));
【讨论】:
假设你有一个TextView,即etx,使用如下代码:
final SpannableStringBuilder sb = new SpannableStringBuilder("HELLOO");
final StyleSpan bss = new StyleSpan(android.graphics.Typeface.BOLD); // Span to make text bold
final StyleSpan iss = new StyleSpan(android.graphics.Typeface.ITALIC);Span to make text italic
sb.setSpan(bss, 0, 4, Spannable.SPAN_INCLUSIVE_INCLUSIVE); // make first 4 characters Bold
sb.setSpan(iss, 4, 6, Spannable.SPAN_INCLUSIVE_INCLUSIVE); // make last 2 characters Italic
etx.setText(sb);
使用这种方法的主要优点是您可以动态格式化文本。
【讨论】:
setText (CharSequence text, TextView.BufferType type) 而不是setText (int resid, TextView.BufferType type)。我总是用setText (CharSequence text) 方法得到完美的结果。那么,请您解释一下为什么不应该使用这种方法以及上述方法的优点。
如果你想让它加粗使用 b 标签。如果你想让它是斜体使用 i 标签。如果你想让一个单词加粗或斜体,把那个单词放在标签内。
<resources>
<string name="register"> <u><b><i>SignUp</i></b></u> </string>
</resources>
【讨论】:
String text="<html>"+"<b>"+"Hell"+"</b>"+"<i>"+"oo"+"</i>"+"</html>";
【讨论】:
如果您在 strings.xml 中有字符串,那么。
<string name="startup"><b><i>HELL</i></b><i>oo</i></string>
你可以在<string> </string>里面使用HTML标签
【讨论】: