完美解决程序启动,Activity之间切换,黑屏问题

默认情况下 activity 启动的时候先把屏幕刷成白色或黑色,再绘制界面,绘制界面或多或少有点延迟,这段时间中你看到的就是白屏,显然影响用户体验,怎么消除呢?

在 Activity theme 设置style 即可

<style name="AppTheme" parent="android:Theme.Light.NoTitleBar">
        <item name="android:windowIsTranslucent">true</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowActionBar">false</item>
        <item name="android:windowBackground">@android:color/transparent</item>
        <!-- All customizations that are NOT specific to a particular API-level can go here. -->
    </style>

意思是让窗口处于透明状态

由于onCreate()有时会加载过多的数据,导致界面迟迟无法显示,更改主题后,程序背景将是透明,显示上一个程序的界面,直到加载完成

注意:给你的layout布局设置一个背景,要不然加载完成后还能看到桌面!

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-05 16:58:59

完美解决程序启动,Activity之间切换,黑屏问题的相关文章

Android -- 使用主题配置文件,去掉程序启动界面的短暂黑屏

关于黑屏 默认的情况下,程序启动时,会有一个黑屏的时期,原因是,首个activity会加载一些数据,比如初始化列表数据等. 去除步骤 1./res/values/styles.xml 在 Theme 中,添加一个 android:windowBackgrounds 属性,设置需要的图片 2.在 AndroidManifest.xml 中设置Theme到首个启动的Activity下. 3.添加 /res/drawable-port/loading.png (若是横屏的启动画面,请放于 /res/d

百度地图 Fragment之间切换黑屏现象解决方案

用过百度地图的人多很忧伤,各种bug, 已无力吐槽,最无语的可能就是会出现黑屏现象,比如一个Activity包含三个Fragment, 其中一个Fragment嵌套MapView使用,在切换这三个Fragment时会出现明显的黑屏,这个问题出现很久了,很早的SDK版本就存在,现在最新的SDK版本依然存在这个问题,解决方案如下: 1,在使用MapView的Fragment的onResume/onPause方法中手动调用设置view是否可见,具体如下: @Override protected voi

MTK-Android APP启动时瞬间闪现黑屏(Theme &amp; Style)

闪屏原因:主要是我们启动Activity的时候,需要跑完onCreate和onResume:Android系统需要处理一些数据后,才会显示.按照这种思路,是不是我把初始化的工作尽量减少就可以避免黑屏?事实是,就算你onCreate啥都不做,仍然会闪一下黑屏,因为初始化解析界面时需要一定时间,下面是解决办法: 1.自定义Theme设置背景图Theme<style name="Theme.AppStartLoad" parent="android:Theme"&g

lld解决程序启动依赖库的问题

场景说明:查找程序依赖库是非常麻烦的,如果需要的又是一些不长使用的库,对于整个系统的移植是非常苦难的.目前尝试使用lld去查找所有依赖的库,然后将这些依赖的库提取,放在同一个文件夹中,然后制定依赖的路径,解决问题. Ldd [选项] 文件 选项有-v:打印ldd 的版本号:-d:执行符号重部署,并报告缺少的目标对象(只对ELF 格式适用):-r:对目标对象和函数执行重新部署,并报告缺少的目标对象和函数(只对ELF 格式适用):-h:帮助信息. 执行如下命令来查看应用程序所关联的库: Ldd –v

android动画-Activity之间切换动画

Android中页面之间动画切换可以使用两种方式,一种是代码,一种是定义修改Activity Theme. 一.代码实现相对来说比较简单 通过调用 overridePendingTransition() 可以实时修改Activity的切换动画. 但需注意的是:该函数必须在调用startActivity()或finishe后立即调用,且只有效一次. 二.Activity Theme 1. 在styles.xml中输入以下代码: <style name="AnimationActivity&q

Android Activity之间切换出现短暂黑屏的处理方法

转自:http://www.cppblog.com/fwxjj/archive/2013/01/14/197259.html 在默认情况下,Android应用程序启动时,会有一个黑屏的时期,原因是,首个activity会加载一些数据,比如初始化列表数据.向服务器发送请求获取数据等等.同样,使用startActivity(inte -- 在默认情况下,Android应用程序启动时,会有一个黑屏的时期,原因是,首个activity会加载一些数据,比如初 始化列表数据.向服务器发送请求获取数据等等.同

Activity 切换黑屏

做盒子项目的时候,碰到一个非常影响用户体验的问题,就是切换Activity 出现黑屏. 在默认情况下,Android应用程序启动时,会有一个黑屏的时期,原因是,首个activity会加载一些数据,比如初 始化列表数据.向服务器发送请求获取数据等等. 使用startActivity(intent)方法从一个Activity进入到新的 Activity时,这个过程中也会出现短暂的黑屏.这个问题的存在是由Android应用框架决定的,但的确很影响用户体验.下面就动手来解决这个黑屏 问题! 第一步:自定

android开发 解决启动页空白或黑屏问题

遇到的情况: app启动时进入启动页时出现白屏页,然后大概一秒之后就出现了背景图片. 原因:app启动时加载的是windows背景,之后再加载布局文件的,所以开始的黑屏/白屏就是windows的背景颜色,因此我们只要在启动页设置windows背景颜色就好了,那么在哪里设置呢?  就是theme里面. 解决办法:参考:[Android Drawable 那些不为人知的高效用法] [Android 启动APP时黑屏白屏的三个解决方案] 首先看之前的布局文件xml写法 <?xml version=&quo

ubuntu(双硬盘双系统)启动时卡死或黑屏 或 启动后分辨率改不了的解决方法

(Ubuntu  18.04)系统启动后卡死,黑屏,或者分辨率改不了的问题都是显卡驱动引起的, 解决方法: 1.(如果已经卡死了,则强制关机)开机: 2.(在选择系统的界面)选择ubuntu高级选项,回车: 3.(在出现的两个模式中)选择恢复(recovery)模式,回车: 4.(在出现的众多选项中)选择grub,回车(你能看到貌似很牛逼的一行行代码跑过): 5.(上面的代码跑完之后应该能重新回到众多选项的界面)选择resume,回车进入系统. 进入系统后很有可能分辨率又出问题了,此时只要更换显