问题描述:
启动activity时,先显示一个空白的界面,带标题栏的,1秒左右的时间后才显示activity对应 layout上的内容。
解决办法:
将activity的windows设置为透明的就可以了。
1,在自定义的主题中
使用 <item name="android:windowIsTranslucent">true</item> 。
<!-- item name="android:windowBackground" 设置背景透明度及其颜色值 -->
<!-- item name="android:windowIsTranslucent" 设置当前Activity是否透明-->
<!-- item name="android:windowAnimationStyle" 设置当前Activity进出方式-->
<style name="AppBaseTheme" parent="android:Theme.Holo.Light.DarkActionBar">
<!-- API 14 theme customizations can go here. -->
<item name="android:windowBackground">@color/translucent_background</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Translucent</item>
</style>
2,使用两个主题
先使用@android:style/Theme.Translucent 或 @android:style/Theme.Translucent.NoTitleBar主题
在activity的onCreate()中在super.onCreate(savedInstanceState);前调用setTheme设置目标主题,注意setTheme一定要在super.onCreate前。
@Override
protected void onCreate(Bundle savedInstanceState) {
setTheme(R.style.AppBaseTheme);
super.onCreate(savedInstanceState);
setContentView(R.layout.aty_main);
ActionBar ab = getActionBar();
if (ab != null) {
ab.hide();
}
}