如果我使用單一類型的字體其做工精細文本不從edges.But切割的時候我試圖用不同的兩種不同的字體文本樣式,然後從Textview中的邊緣切割文本。
Typeface tfNormal = Typeface.createFromAsset(ctx.getAssets(), "fonts/futura_tee.ttf");
Typeface tfBold = Typeface.createFromAsset(ctx.getAssets(), "fonts/futura_tee_bold.ttf");
String msg="tournament sopan 20 nov offline double 2 was updated";
SpannableStringBuilder sb = new SpannableStringBuilder();
final String t_name = "sopan 20 nov offline double 2";
int startindex = msg.indexOf(t_name);
int endindex = startindex + t_name.length();
ClickableSpan clickableSpan = new ClickableSpan() {
@Override
public void onClick(View textView) {
//some click event
}
@Override
public void updateDrawState(TextPaint ds) {
ds.setUnderlineText(false);
ds.setColor(ctx.getResources().getColor(R.color.blue_color));
ds.setTypeface(tfBold);
}
};
if (startindex >= 0) {
sb.setSpan(clickableSpan, startindex , endindex , Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
}
textview.setMovementMethod(LinkMovementMethod.getInstance());
textview.setText(sb, TextView.BufferType.SPANNABLE);
textview.setTypeface(tfNormal);
這會發生是因爲您的文本太長,無法放入您的textview。所以你可以在佈局文件中使用elipsesize:end。 –
或者使用可以使用滾動字體滾動太長的文本。 –
@ChiragSavsani:我添加了elipsesize:在佈局文件中結束,但問題仍然存在。 –