同一个字符串中有多个跨距

时间:2015-02-24 11:51:00

标签: android textview spannable

我在同一个字符串中设置StyleSpan和ForegroundColorSpan时遇到问题。这是我的代码:

SpannableStringBuilder text_1_2 = new SpannableStringBuilder(getString(R.string.why_text_1_2));

StyleSpan bss = new StyleSpan(android.graphics.Typeface.BOLD);
ForegroundColorSpan fcs = new ForegroundColorSpan(getResources().getColor(R.color.custom_blue));

text_1_2.setSpan(fcs, 0 , text_1_2.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE);
text_1_2.setSpan(bss, 0, text_1_2.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE);

结果字符串为蓝色但不是粗体。

感谢。

1 个答案:

答案 0 :(得分:4)

你能试试吗

text_1_2.setSpan(new StyleSpan(android.graphics.Typeface.BOLD), 0 , text_1_2.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE);
text_1_2.setSpan(new ForegroundColorSpan(getResources().getColor(R.color.custom_blue)), 0, text_1_2.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE);

但我的建议是,如果你不想设置字符串的一部分,请使用

来设置样式和颜色
 android:textColor="@color/color_name"
 android:textStyle="bold"