android:windowBackground =“@ null”来提高应用程序速度

我刚刚读了一篇Romain Guy的博客文章,讨论如何加快应用的UI。 他基本上说,如果你的应用程序使用不透明的视图,你可以使用下面的命令将背景设置为@null

 <item name="android:windowBackground">@null</item> 

这是否工作? 我愿意像他那样使用FPS进行testing,但是我没有find明确的方式来获取这些信息。

我读过一些线索,说你需要自己做。 我将添加一个自定义视图,在onDraw()方法中绘制FPS,并调用invalidate()以始终获取调用。

尽pipe这样做有效,但我想知道在应用程序中是否有更好的方法来分析FPS。

Solutions Collecting From Web of "android:windowBackground =“@ null”来提高应用程序速度"

该博文有样本的源代码。 检查FpsImageView.java

如果应用程序的UI完全绘制窗口内容,则应始终将windowBackground设置为null。 这可以防止框架以默认的背景颜色填充窗口,所以渲染每个框架所需的通过量less一点,这意味着您可以花费自己的时间来绘制像素数量。

在某些情况下,我已经注意到将背景设置为null会导致奇怪的ui毛刺,正如这里所写的。

我会build议在各种设备和模拟器上testing它,然后再决定使用它。