如何在TextView文本中为单词设置自定义字体

kot*_*oti 6 android textview custom-font spannablestring

我想为一个单词设置自定义字体,该单词出现在字符串中的任何位置.

例:海@abc你好吗?亲爱的朋友你好,你在哪里@abc

在上面的例子中,我必须为"abc"应用自定义字体.我尝试过Spannable类,但我无法得到它.

final TextView txtComments = (TextView)view.findViewById(R.id.tv_comments);  
SpannableStringBuilder SS = new SpannableStringBuilder(alcomments.get(i));
SS.setSpan (new CustomTypefaceSpan("", tf), 0, SS.length(),Spanned.SPAN_EXCLUSIVE_INCLUSIVE);
txtComments.setText(SS);
Run Code Online (Sandbox Code Playgroud)

但它影响整个字符串.请指导我如何实现它.

Kru*_*iya 1

您可以使用 html 进行管理或在 textview 中设置自定义字体样式。

1)如果这种情况很少见,那么请像这样设置html文本,

TextView txtComments = (TextView)view.findViewById(R.id.tv_comments); 
txtComments.setText(Html.fromHtml("Hi<font color=""#FF0000"">abc</font>"));
Run Code Online (Sandbox Code Playgroud)

否则像这样设置自定义字体。

2)

Typeface type = Typeface.createFromAsset(getAssets(),"fonts/Kokila.ttf"); 
txtyour.setTypeface(type);
Run Code Online (Sandbox Code Playgroud)