能不能實現使用一個textview
修改多個文本字符串的文本顏色,我用Html.fromHtml
嘗試失敗:
textViewPrevChat.append("\n"+Html.fromHtml("<b>Bold string </b>")+somestringhere);
運行之後,所有的字體加粗,但是在 中的顏色屬性沒有改變。
使用SpannableString
實現:
這段代碼修改一半字符串的顏色,另一部分調整字體
public static SpannableString categoryText(String label, String text, int colorIn) {
String strIn = label + " " + text;
SpannableString ss = new SpannableString(strIn);
ss.setSpan(new ForegroundColorSpan(colorIn), 0, label.length(), SpannableString.SPAN_EXCLUSIVE_EXCLUSIVE);
ss.setSpan(new RelativeSizeSpan(.80f), 0, label.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
return ss;
}