Android窗口背景的優(yōu)化
視圖有背景,每個(gè)窗口也是有背景的。每一Activity是一個(gè)窗口,每一個(gè)Activity都有不同的背景。
界面的繪畫順序如下:窗口——根視圖 ——子視圖。當(dāng)我們的根視圖已經(jīng)覆蓋了整個(gè)窗口的時(shí)候 ,程序還是會(huì)畫一個(gè)透明的窗口的背景,而這個(gè)背景用戶是看不到的。我們就需要想辦法讓程序在這樣的情況下去掉窗口背景,節(jié)約畫窗口背景的時(shí)間提高效率。
刪除窗口背景的方法:
一、java代碼中
- public void onCreate(Bundle icicle){
- super.onCreate(icicle);
- setContentView(R.layout.mainview);
- // 刪除窗口背景
- getWindow().setBackgroundDrawable(null);
- ...
- }
二、在xml文件中
首先在res/values/style.xml 文件中定義如下:
- <resources>
- <style name="NoBackgroundTheme" parent="android:Theme">
- <item name="android:windowBackground">@null</item>
- </style>
- </resources>
然后在AndroidManifest.xml文件中 找到要去掉背景的activity,書寫代碼如下:
- <activity android:name="MyApplication" android:theme="@style/NoBackgroundTheme"> ... </activity>