android – 调用TextView.setText()重绘整个屏幕,尽管视图层次结构

在我的应用程序中,我有一个时间显示,每秒更新一次.每次用于秒字段的TextView更改时,Developer Options-> Show surface updates工具都会闪烁整个屏幕.我环顾四周,实际上只能找到 this question,这很好地说明了没有办法阻止TextView导致至少部分窗口重新布局.所以我肯定要验证我的TextView包装在他们自己的容器中,但我仍然有同样的问题.每次调用setText()都会导致整个视图闪烁.

我的层次结构如下:

>片段

> RelativeLayout(片段根视图)

> LinearLayout

> RelativeLayout

>我的时间TextViews

>很少变化的各种其他视图组件

如果可能,我想解决这个问题.如果可能的话,我确实需要尝试减少我的观看次数,我打算继续努力,但这仍然是我想从应用中删除的问题.

解决方法

当硬件加速打开时,显示曲面更新会闪烁整个屏幕,但这并不意味着整个窗口被重绘.您可以使用另一个选项,它可以显示硬件加速打开时画面的哪些部分被重新绘制(“显示GPU视图更新”).

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...