老早就遇到过,现整理出来。
出现短暂黑屏、标题栏显示名称的问题,主要出现在以下两个场景中:1,初次打开app时;2,按Home键退出app,长时间后,再进入app时(奇怪的时,按Home键退出,短时间内再打开app,并没有这个问题)。
解决方案是添加android:windowIsTranslucent=true的属性,Translucent意为透明的,即跳转时保持开始的界面,这样就保证了体验的流畅性。如我自定义了一个标题栏状态样式,添加后效果style样式如下:
<!-- 顶部自定义标题栏 -->
<style name="title_bar" parent="@android:style/Theme">
<item name="android:windowTitleSize">48dp</item>
<item name="android:windowTitleBackgroundStyle">@drawable/title_bar_background</item>
<item name="android:windowIsTranslucent">true</item>
</style>
在项目的manifest.xml中,调用如下:
<activity android:name="MainActivity"
android:theme="@style/title_bar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>