在不增加GPU透支的情况下更改背景颜色-Android



我知道如何使用android:background来更改背景颜色,但这会为应用程序添加GPU必须绘制的另一层。我想知道是否有一种方法可以在不添加另一层GPU透支的情况下更改某些内容来设置样式的背景。也许它可以用某种风格来完成,但我尝试过的风格似乎只是在普通灯光主题背景的顶部重新绘制。

在res/values文件夹中创建一个文件并命名。例如,theme.xml

<resources>
    <style name="Theme.NoBackground" parent="android:Theme">
        <item name="android:windowBackground">@null</item>
    </style>
</resources>

对于父级,使用您在应用程序清单中使用的任何主题。逻辑是,您正在扩展父主题并设置背景属性。

在清单文件中,将新样式设置为application标记之间的应用程序主题。

android:theme="@style/Theme.NoBackground"

这将删除主题背景,因此您必须为布局中的每个活动设置背景。如果你想为所有应用程序设置一个背景,而不是null,那么指定你的绘图内容。类似的东西

<item name="android:windowBackground">@drawable/abc</item>

罗曼·盖伊在这篇文章中解释了这一点,我只是想为你简化一下:

http://www.curious-creature.org/2009/03/04/speed-up-your-android-ui/

最新更新