【Android】自定义theme解决进入app闪黑屏问题
每次启动app时总会闪一下黑屏,时间很短,一闪而过但是还是可以看的很清楚,虽然不影响运行,但是用户体验性极差,效果如图。
初感觉是app加载的问题,网上查相关资料后,该问题出现还是跟Activity生命周期有关的。通常情况,我们都是在onCreate或是onResume中设置显示界面,所以在这之前会有一段空白期,这就是黑屏期。
解决方法就是自定义theme用于启动的activity,其中对于theme的设置分两种,设置背景图和设置透明:
//1、设置背景图Theme<style name="Theme.AppStartLoad" parent="android:Theme"> <item name="android:windowBackground">@drawable/ipod_bg</item> <item name="android:windowNoTitle">true</item> </style>//2、设置透明Theme<style name="Theme.AppStartLoadTranslucent" parent="android:Theme"> <item name="android:windowIsTranslucent">true</item> <item name="android:windowNoTitle">true</item> </style>
在启动的activity运用:
<activityandroid:name=".activity.GuideActivity"android:theme="@style/Theme.AppStartLoad"android:screenOrientation="portrait"><intent-filter><action android:name="android.intent.action.MAIN"/><category android:name="android.intent.category.LAUNCHER"/></intent-filter></activity>
两种方法都能解决闪黑屏问题,但效果不同:
设置背景图:用户桌面点击app图标后即可看到此背景图,稍后进入启动的activity,给人感觉进入app很快
设置透明:点击app图标后会有短暂时间停留在桌面,其实已经进入了app,只是设置了透明,稍后直接进入activity
根据我的观察,目前市场上app大都采用的第一种方案,像新浪微博、淘宝、美团、优酷等,背景图都是app名称和图标,简约有不失大气。
【Android】自定义theme解决进入app闪黑屏问题相关推荐
- 【Android】解决启动APP闪黑/白屏
前言 问题:在App启动过程中会出现闪白屏或黑屏的一段时间才进入布局界面.这样的体验十分不好. 首先来了解一下 冷启动 当启动应用时,后台没有该应用的进程,这时系统会重新创建一个新的进程分配给该应用, ...
- 【转】Android 避免APP启动闪黑屏(Theme和Style)
前几天Boss就反应说,机器每次启动程序都会闪一下黑屏,这个客户不接受.没办法,只能想想怎么解决,最后找到了下面的方法.闪黑屏的原因主要是我们启动Activity的时候,需要跑完onCreate和on ...
- Android 避免APP启动闪黑屏的解决办法
闪黑屏的原因主要是我们启动Activity的时候,需要跑完onCreate和onResume才会显示界面 前几天Boss就反应说,机器每次启动程序都会闪一下黑屏,这个客户不接受.没办法,只能想想怎么解 ...
- Android应用启动闪黑屏
闪黑屏的原因主要是我们启动Activity的时候,需要跑完onCreate和onResume才会显示界面.也就是说需要处理一些数据后,才会显示.按照这种思路,是不是我把初始化的工作尽量减少就可以避免黑 ...
- 【转】Android APP 启动黑屏优化补丁 (2016-01-18 10:35:23)
[转]Android APP 启动黑屏优化补丁 (2016-01-18 10:35:23) 转载▼ 这个必须转,这才是高手,解决官方都解决不好的问题! 原文地址,以下为转贴内容: 使用说明 ***** ...
- Android 启动APP时黑屏白屏的三个解决方案
Android 启动APP时黑屏白屏的三个解决方案 参考文章: (1)Android 启动APP时黑屏白屏的三个解决方案 (2)https://www.cnblogs.com/liqw/p/42634 ...
- android 接电话 返回后黑屏,安卓手机打电话黑屏怎么办?解决安卓接电话黑屏
现在的手机市场几乎被iphone和安卓手机占领着,相信你或者你的周围绝大部分朋友都有安卓手机,到那时是手机多少都会出点问题,小编自己就遇到过,使用安卓手机打电话时竟然黑屏.如果说偶尔遇到一两次,那也就 ...
- Android Studio 打开Profiler后App闪退
Android Studio 打开Profiler后App闪退 环境 Android Studio 4.1.1 Android 10 错误信息: 2020-12-24 16:06:21.870 300 ...
- win10任务栏一点就卡死或闪黑屏解决办法
前言 最近电脑一开机,任务栏一点就卡死或者闪黑屏,一开始以为是我电脑出问题了,但实际是win10系统自动更新后,系统的原因. 一.现象 开机后,任务栏点击没反应,卡死,闪黑屏. 二.原因 原因是win ...
最新文章
- 计算机在线咨询,计算机科学与技术
- C#利用Graphics类绘制进阶--根据文字内容自动生成指定旋转角度图片
- 程序员上了天堂之后...
- 图解:从单个服务器扩展到百万用户的系统
- 安装python应该先安装pycharm还是python_Pycharm及python安装详细步骤及PyCharm配置整理(推荐)...
- DedeCMS生成首页html静态文件的教程
- ASP.NET MVC 源代码 剖析
- 很慢怎么办_手机信号满格,网速却很慢怎么办?3招教你一键恢复网络
- python -pass的用法
- VB如何实现Undo(撤消)功能
- Linux Semaphore
- 服务器装系统报0x0000005d,Win8系统安装过程中提示ErrorCode:0x0000005D怎么办
- 在VUE中使用Echarts世界地图,并根据经纬度标记位置
- DirectShow之视频处理
- Java代码加密混淆工具有哪些?
- 【机器学习】简述多种降维算法
- python爬虫爬取百度图片总结_爬虫篇| 爬取百度图片(一)
- java 后台开发中model与entity(实体类)的区别
- skywalking全链路追踪
- 【Visual c++】+【EasyX】游戏组件1 移动的小人
热门文章
- “2017中国海度日”成功举办,海度生态共迎日本大数据物联网解决方案的中国机会
- 提供“无码”应用程序开发工具包,Skuid获2400万美元融资
- vue 前端设置允许跨域_vue——前端跨域
- Unreal UE4 、角色换色解决方案—多象限UV—及渲染材质到贴图(CanvastoRenderTarget)(渲染多象限UV)
- 7-27 从身份证号码中提取出出生年月 (12point(s))
- ubuntu无线优先上网
- jenkins远程构建job_JENKINS触发远程构建功能使用
- i9 9900k mysql_英特尔 i9-9900K 处理器现身跑分库:频率 5.0GHz,共有 16 线程
- ILRuntime:ILRuntime寄存器模式详解
- 技术动态 | ChatGPT 下的知识图谱审视:一次关于必然影响、未来方向的讨论实录与总结...