android启动页白屏黑屏问题

开发项目中遇到黑白屏,然后就记录下来啦。。。。

我们在启动app的时候,屏幕会出现一段时间的白屏或者黑屏,所以这个效果很影响用户体验。

那出现这个黑白屏的现象的原理是什么啦? 知道问题所在然后才好对症下药的。

原因:(借用一个大佬说的)产生这个现象的原因,当我们在启动一个应用时,系统会去检查是否已经存在这样一个进程,如果不存在,就是冷启动。系统和APP本身都有很多工作需要处理。首先系统的服务会先检查startActivity中的intent的信息,然后在去创建进程,最后才是执行启动Acitivy的操作。而我们上面提到的显示白黑屏的问题,就是在这段时间内产生的。

系统在绘制页面加载布局之前,首先会初始化窗口(Window),而在进行这一步操作时,系统会根据我们设置的Theme来指定它的Theme 主题颜色,Window 布局的顶层时DecorView,StartingWindow显示一个空DecorView,我们在Style中的设置就决定了显示的是白屏还是黑屏。


发现问题所在:那我在 在清单文件 在AndroidManifest文件中设置: 修改Stlyle 样式:

 出现白屏系统默认的背景颜色是白色的 还有 黑色 

   

   

所以可以自定义  Stlyle 的样式  :

1  将启动的 白屏替换为 自定义的图片

相对应的启动页

这样黑白屏的问题就处理啦。

那么:Window 布局的顶层时DecorView,StartingWindow显示一个空DecorView,那我们可以关闭这个吗?当然是可以的。


当这样做流畅性不是很好的,还是推荐使用第一种,自定义样式 winddowbackground 使用 背景图片 和 xml 布局都是可以的。

你可能感兴趣的:(android启动页白屏黑屏问题)