您的位置:首页 > 移动开发

Android-使用Theme来解决启动app是出现的空白屏

2016-12-07 11:12 375 查看
相信大多数人一开始都会对启动app的时候出现先白瓶或者黑屏然后才进入第一个界面,例如:SplashActivity。那这是什么原因造成的呢?

<style name="Splash_Theme" parent="@android:style/Theme.NoTitleBar">
</style>

原因是我们给改Activity/Application设置的主题引起的,因为该主题相对应的windowBackground等背景被设置成了白色或者黑色,且当我们进入app的第一个界面的时候不是马上就执行onCreate所以会造成先白屏或黑屏一下再进入界面。

所以我就试着搜索延迟启动来解决问题然并卵,在我反编译了微信等一些没这种效果的app查看他们的theme设置,于是找到了解决办法:

1.给他设置背景跟启动页的背景相似,如果你的启动页是张图片那么可以直接给windowBackground这个属性设置该图片那么就不会有一闪的效果了

<!-- 为 Theme 设置背景图 -->
<style name="Splash_Theme" parent="@android:style/Theme.NoTitleBar">
<item      name="android:windowBackground">@drawable/splash_bg</item>
<item name="android:windowNoTitle">true</item>
</style>

2.采用世面的处理方法,设置背景是透明的,给人一种延迟启动的感觉。

<style name="Splash_Theme" parent="@android:style/Theme.NoTitleBar">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowNoTitle">true</item>
</style>

采取这么设置我们就能把这个一闪的问题解决了,让自己的应用体验更完善一点。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐