Android App启动时白屏或黑屏问题修复

本文解释了Android应用启动时出现白屏或黑屏的原因,并提供了解决方案:通过为启动Activity的主题设置windowBackground属性来避免这一现象。
当打开一个Activity时,如果这个Activity所属的应用还没有在运行,系统会为这个Activity所属的应用创建一个进程,但进程的创建与初始化都需要时间,在这个动作完成之前系统要创建一个StartingWindow(也可以称之为Preview Window),当程序初始化完成后显示用户UI并移除这个窗口。
 显示白屏或者黑屏,是由你的启动Activity或者Application的主题来决定的。如果你使用的是Light主题,那么就可能出现白屏;如果你使用的是Black主题,那么就可能出现黑屏。当你设置Light或者Black主题时,Starting Window显示的就是你启动Activity的android:windowBackground属性,所以才会出现白屏或者黑屏的情况。

解决方案:给LaunchingActivity的主题的windowBackground设置一个图片

<activity
            android:name=".ui.launching.SampleLaunchingActivity"
            android:screenOrientation="portrait"
            android:theme="@style/LaunchingTheme">
<!-- 防止启动页白屏,设置图片 -->
    <style name="LaunchingTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="android:windowBackground">@drawable/activity_launching_bac</item>
        <item name="android:windowFullscreen">true</item>
    </style>it
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值