当字符串太大时,可以采取以下方法来避免Android TextView的混乱:
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxLines="1"
android:ellipsize="end"
android:text="Your long text here" />
public class ScrollingTextView extends TextView {
public ScrollingTextView(Context context) {
super(context);
setSingleLine();
setEllipsize(TextUtils.TruncateAt.MARQUEE);
setMarqueeRepeatLimit(-1);
setHorizontallyScrolling(true);
setFocusable(true);
setFocusableInTouchMode(true);
requestFocus();
}
@Override
public boolean isFocused() {
return true;
}
}
String longText = "Your long text here";
int maxLength = 10;
if (longText.length() > maxLength) {
SpannableStringBuilder spannableStringBuilder = new SpannableStringBuilder();
spannableStringBuilder.append(longText.substring(0, maxLength));
spannableStringBuilder.append("...");
textView.setText(spannableStringBuilder);
} else {
textView.setText(longText);
}
以上方法可以根据实际需求选择使用,避免Android TextView的混乱。对于更复杂的文本处理需求,可以考虑使用自定义View或者寻找相关的开源库来解决。
领取专属 10元无门槛券
手把手带您无忧上云