先上解决方法:
1.如果只是纯文本显示
推荐使用StaticLayout自定义view 速度快
2.快速解决(API 23)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
textView.setBreakStrategy(Layout.BREAK_STRATEGY_SIMPLE);
}
https://developer.android.google.cn/reference/android/widget/TextView#setBreakStrategy(int)
BREAK_STRATEGY_SIMPLE 相比BREAK_STRATEGY_HIGH_QUALITY与
BREAK_STRATEGY_BALANCED性能消耗最少,但布局相对没有其他两种美观。
同样一句话不同策略对比:
下图是BREAK_STRATEGY_SIMPLE
下图是BREAK_STRATEGY_HIGH_QUALITY
具体看官方文档解释:
https://developer.android.google.cn/reference/android/text/Layout#BREAK_STRATEGY_SIMPLE
使用traceview与Hierarchy Viewer分析卡顿位置