文档章节

Android Activity之间跳转出现短暂黑屏的处理方法

今日竹石
 今日竹石
发布于 2014/05/07 11:31
字数 361
阅读 10131
收藏 0

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

第一步:自定义Theme(主题)

在your_project/res/values/styles.xml中加入自定义Activity的Theme,如下所示:

<?xml version="1.0" encoding="utf-8"?>
 <resources>     
 <!-- Activity主题 -->     
 <style name="activityTheme" parent="@android:style/Theme">         
 <item name="android:windowIsTranslucent">true</item>     
 </style> 
 </resources>

其中<item name="android:windowIsTranslucent">true</item>的意思是设置目标 Activity(要启动的那个Activity)是透明的。很容易理解,两个Activity,A和B;在A中启动B,因为B是透明的,看到的背景仍是 A,这样就解决了这个短暂的黑屏问题。

第二步:修改Manifest,将Theme应用到目标Activity上

定义好Theme后,就该为对应的Activity绑定Theme了。这个代码主要在Manifest中实现,在Activity中加上以下属性:

<activity android:name=".activity.BookActivity"        
android:theme="@style/activityTheme" />

做了以上操作即可。


© 著作权归作者所有

共有 人打赏支持
今日竹石
粉丝 41
博文 227
码字总数 181312
作品 0
朝阳
程序员
Flutter学习中遇到的问题:已有项目加入Flutter模块

本文主要尝试解决如下几个问题: 如何在在已经项目加入Flutter 混合跳转 混合栈问题 混合栈数据问题 跳转黑屏是因为debug的缘故,打release包则没有。 1. 如何在在已经项目加入Flutter 直接参...

老实巴交的读书人
09/24
0
0
android 学习笔记 事件 转跳页面

实现页面转跳 android 页面之间的转跳,可以通过构建一个Intent对象来实现转跳。 转跳到的activity类,可以通过 intent类中的方法获取其他组件传递过来的信息。 2.回跳 转跳到新的页面后,我...

304158
07/27
0
0
android 程序启动界面的短暂黑屏

默认的情况下,android 程序启动时,会有一个黑屏的时期, 只要在入口activity 加上android:theme="@android :style/Theme.Translucent" 就可以解决启动黑屏的问题...

平凡简单
2012/07/02
0
0
Android去掉标题栏和全屏[转]

Android去掉标题栏和全屏都是件很容易的事情,最常见的有两种方法: 第一:在程序代码中实现 Java代码 this.requestWindowFeature(Window.FEATURENOTITLE);//去掉标题栏 this.getWindow().s...

kut
2011/09/09
0
0
Android 面试技能树梳理

相信大家都有面试的经历,相对比面试官的问的一些问题其实都是基础的知识,但就是一些基础的知识我们也不是很完美的回答出来,我们也知道现在的开发人员很多,一家公司一个岗位就会有很多的开...

liu3364575
05/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下单接口调优实战,性能提高10倍

概述 最近公司的下单接口有些慢,老板担心无法支撑双11,想让我优化一把,但是前提是不允许大改,因为下单接口太复杂了,如果改动太大,怕有风险。另外开发成本和测试成本也非常大。对于这种...

Sam哥哥聊技术
7分钟前
0
0
rabbitMQ的安装和配置

在Windows下进行rabbitMQ的安装 第一步:软件下载 在安装rabbitMQ之前,需要先安装Erlang。 Erlang官网:http://www.erlang.org/downloads rabbitMQ官网:http://www.rabbitmq.com/download....

狼王黄师傅
27分钟前
0
0
SAP产品的Field Extensibility

SAP开发人员的工作职责,除了实现软件的功能性需求外,还会花费相当的精力实现一些非功能性需求,来满足所谓的SAP Product Standard(产品标准)。这些产品标准,包含在SAP项目实施中大显身手...

JerryWang_SAP
32分钟前
0
0
Vue-Element-Upload

记录一下文件上传封装Js 代码示例 封装:uploadFile.vue <template> <el-upload v-model="attachment" ref="upload" class="upload-demo" :action="uploadUrl" ......

华山猛男
39分钟前
2
0
AWVS破解及使用手册

1.安装 因为是windows软件,比较简单,此部分略: 破解插件下载: 链接: https://pan.baidu.com/s/1x9LK9F3KvqDgTvXDjoSZnQ 提取码: 7k4u 2.创建扫描目标 2-1.Targets->Add Target 2-2.对话框...

硅谷课堂
42分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部