ExpandableTextView
ExpandableTextView copied to clipboard
Android 9系统中,内容会显示不全
int lineHeight = 0;
for (int i = 0; i < lineCount; i++) {
Rect lienBound = new Rect();
sl.getLineBounds(i, lienBound);
lineHeight += lienBound.height();
}
暂时这么处理,改成下面(不知道原因):
float lineHeight = 0;
if(lineCount > 0) {
Rect lienBound = new Rect();
sl.getLineBounds(0, lienBound);
int h = lienBound.height();
lineHeight += h * lineCount;
}
我这里不是很好改,等楼住更新吧,谢谢回复 @captain-miao
我这边并没有发现这个现象
@devzld 是 9.0的系统吗?
@ksd32767 我用的华为9.0系统,没发现
遇到同样的问题,使用captain-miao的方案可以解决。
我也遇到了, captain-miao 的方案在我这里还是有问题。我现在是安卓 13,这样写可以完美解决问题。
val staticLayout = if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
StaticLayout(mText, paint, measuredWidth - paddingLeft - paddingRight, Layout.Alignment.ALIGN_CENTER, 1f, 0f, true)
} else {
val builder = StaticLayout.Builder.obtain(mText, 0, text.length, paint, measuredWidth - paddingLeft - paddingRight)
.setAlignment(Layout.Alignment.ALIGN_CENTER)
.setLineSpacing(0f, 1f)
.setIncludePad(true)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
builder.setUseLineSpacingFromFallbacks(true)
}
builder.build()
}