细心的朋友一定注意到APP启动时会闪一下黑屏,如果应用的启动页是白色的话这种启动效果会显得特别突兀,让人不爽。
自己也尝试了一些方法,比如给SplashActivity设置白色背景或者透明背景之类的,都没有效果。
后来在网上搜了一下关于这方面的资料
原因在于应用启动时,程序中带有 android.intent.action.MAIN 的Activity,也就是启动主页面。他的onCreate和onResume生命周期还没有执行完成,但是应用已经启动,所以体现出来的效果就是黑屏。解决的办法就是给Application设置一个theme。
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<!-- Customize your theme here. -->
<item name="android:windowIsTranslucent">true</item>
</style>
<!-- 这样就可以将启动时的Activity做透明处理,但是可能会产生一点的延迟效果。 -->
网友评论