Reputation: 425
I've got problems to set StyleSpan and ForegroundColorSpan in the same string. Here's my code:
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);
The resulting string has blue color but is not bold.
Thanks.
Upvotes: 0
Views: 4013
Reputation: 12378
Can you try this
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);
But my recommendation is if you don't want to style a part of the string apply the style and color using
android:textColor="@color/color_name"
android:textStyle="bold"
Upvotes: 4