TextView单行截断bug记录

166 阅读1分钟
TextView tv = new TextView(context);
tv.setIncludeFontPadding(false)
tv.setEllipsize(TextUtils.TruncateAt.END)
tv.setMaxLines(1)

在这种设置下,文本内容出发截断和不触发截断,TextView高度是不一样的。

在Android 9 和 Android 11 中复现了该问题。但在 Android 7.1.2中没有复现该问题。

解决方法设置 setSingleLine 为true 即可解决该问题

TextView tv = new TextView(context);
tv.setIncludeFontPadding(false)
tv.setEllipsize(TextUtils.TruncateAt.END)
tv.setMaxLines(1)
tv.setSingleLine(true)