我使用uk.co.chrisjenx:calligraphy:2.1.0
库在我的应用中实现了自定义字体。
我现在需要更改textview的部分颜色。我试过用
String username = "<font color='#FC195A'>" + post.getUsername() + "</font>";
但字体颜色保持不变。
有解决方法吗?
答案 0 :(得分:1)
您可以使用Spannable String来完成任务。
请点击以下链接:
Set color of TextView span in Android
要为用户名提供颜色,请首先获取其长度,然后执行以下操作:
Spannable wordtoSpan = new SpannableString(username);
wordtoSpan.setSpan(new ForegroundColorSpan(Color.BLUE), 0, username.length();, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
usernameTextView.setText(wordtoSpan);
答案 1 :(得分:0)
声明字体如下图所示
// Create the Typeface you want to apply to certain text
CalligraphyTypefaceSpan typefaceSpan = new CalligraphyTypefaceSpan(TypefaceUtils.load(getAssets(), "fonts/Roboto-Bold.ttf"));
// Apply typeface to the Spannable 0 - 6 "Hello!" This can of course by dynamic.
sBuilder.setSpan(typefaceSpan, 0, 6, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
setText(sBuilder, TextView.BufferType.SPANNABLE);
添加设置文字颜色选项
setTextColor(Color.BLACK);