Android启动过程中背景图片显示

转自:http://blog.csdn.net/zhangzhikaixinya/article/details/17001321

大部分Android App启动过程中,都会设置一个背景图片,直到App加载成功,图片消失。因此,这也是做Android App的基本技能之一。这个过程实现起来并不难。

总共需要以下内容:2个Activity,一张背景图,2个xml配置文件,String.xml,AndroidManifest写入配置信息。

1 准备一张背景图图片,命名为load,自己选择图片格式。放在drawable目录下

2  创建Load页面 LoadActivity.java及相关布局文件load.xml

LoadActivity.java

[java] view plaincopy

  1. package com.timothy.load;
  2. import android.app.Activity;
  3. import android.os.Bundle;
  4. import android.content.Intent;
  5. import android.graphics.PixelFormat;
  6. import android.os.Handler;
  7. import android.view.WindowManager;
  8. public class LoadActivity extends Activity {
  9. //time for picture display
  10. private static final int LOAD_DISPLAY_TIME = 1500;
  11. /** Called when the activity is first created. */
  12. @Override
  13. public void onCreate(Bundle savedInstanceState) {
  14. super.onCreate(savedInstanceState);
  15. getWindow().setFormat(PixelFormat.RGBA_8888);
  16. getWindow().addFlags(WindowManager.LayoutParams.FLAG_DITHER);
  17. setContentView(R.layout.load);
  18. new Handler().postDelayed(new Runnable() {
  19. public void run() {
  20. //Go to main activity, and finish load activity
  21. Intent mainIntent = new Intent(LoadActivity.this, MainActivity.class);
  22. LoadActivity.this.startActivity(mainIntent);
  23. LoadActivity.this.finish();
  24. }
  25. }, LOAD_DISPLAY_TIME);
  26. }
  27. }

load.xml

[html] view plaincopy

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:orientation="vertical"
  4. android:gravity="center|center"
  5. android:layout_width="fill_parent"
  6. android:layout_height="fill_parent"
  7. android:background="@drawable/load">
  8. </LinearLayout>

3  创建主页面 MainActivity.java及相关布局文件main.xml

MainActivity.java

[java] view plaincopy

  1. package com.timothy.load;
  2. import android.app.Activity;
  3. import android.os.Bundle;
  4. public class MainActivity extends Activity {
  5. /** Called when the activity is first created. */
  6. @Override
  7. public void onCreate(Bundle savedInstanceState) {
  8. super.onCreate(savedInstanceState);
  9. setContentView(R.layout.main);
  10. }
  11. }

main.xml

[html] view plaincopy

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:orientation="vertical"
  4. android:layout_width="fill_parent"
  5. android:layout_height="fill_parent"
  6. >
  7. <TextView
  8. android:layout_width="fill_parent"
  9. android:layout_height="wrap_content"
  10. android:text="@string/hello"
  11. />
  12. </LinearLayout>

4 配置strings.xml

[html] view plaincopy

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <resources>
  3. <string name="hello">Hello, this is a demo to picture before app start</string>
  4. <string name="app_name">LoadPictureDemo</string>
  5. <style name="MyTheme.NoTitleBar.CustomBackground" parent="@android:Theme.Black">
  6. <item name="android:windowBackground">@drawable/load</item>
  7. <item name="android:windowNoTitle">true</item>
  8. <item name="android:windowFullscreen">true</item>
  9. <item name="android:windowContentOverlay">@null</item>
  10. </style>
  11. </resources>

5 配置AndroidManifest.xml

[html] view plaincopy

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <manifest xmlns:android="http://schemas.android.com/apk/res/android"
  3. package="com.timothy.load"
  4. android:versionCode="1"
  5. android:versionName="1.0">
  6. <uses-sdk android:minSdkVersion="8" />
  7. <application android:icon="@drawable/icon" android:label="@string/app_name">
  8. <activity android:name=".LoadActivity"
  9. android:configChanges="orientation|keyboardHidden"
  10. android:theme="@style/MyTheme.NoTitleBar.CustomBackground">
  11. <intent-filter>
  12. <action android:name="android.intent.action.MAIN" />
  13. <category android:name="android.intent.category.LAUNCHER" />
  14. </intent-filter>
  15. </activity>
  16. <activity android:name=".MainActivity">
  17. </activity>
  18. </application>
  19. </manifest>

6 OK, 编译运行

启动过程中:

完成启动:

时间: 2024-12-29 23:14:55

Android启动过程中背景图片显示的相关文章

轻松识破linux内核启动过程中的“”套路“”

内核启动流程相关的内容让很多热爱linux的小伙伴既爱又恨,因为这是了解linux系统基本构造的良好过程同时由于其本身复杂且底层,脑子中的脉络不是很清晰,本文就总结了一些优秀博文,以自己的理解来解构一下. 本文的环境是CentOS 6.8, 基本过程: 庖丁解牛: 1.POST BIOS的功能由两部分组成, 步骤1:上电自检POST(Power-on self test),主要负责检测系统外围关键设备(如:CPU.内                 存.显卡.I/O.键盘鼠标等)是否正常.例如,

github项目解析(八)--&gt;Activity启动过程中获取组件宽高的三种方式

转载请标明出处:一片枫叶的专栏 上一个github小项目中我们介绍了防止按钮重复点击的小框架,其实现的核心逻辑是重写OnClickListener的onClick方法,添加防止重复点击的逻辑,即为第二次点击与第一次点击的时间间隔添加阙值,若第二次点击的时间间隔与第一次点击的时间间隔小于阙值,则此次点击无效,再次基础上我们又封装了点击组件验证网络Listener,点击组件验证是否登录Listener等,具体可参考:github项目解析(七)–>防止按钮重复点击 本文中我将介绍一下android中A

Android启动过程——init,Zygote,SystemServer

一.Android设备启动经历的三个阶段:Boot Loader:Linux Kernel.Android系统服务:每一个阶段都有自己的启动画面. 1.Android中第一个被启动的进程--init,init进程的PID为1,其它的服务都由其进行创建.它是通过解析init.rc脚本来构建出系统的初始执行状态的.init进程是在系统启动启动过程中启动的. 2.init.rc语法规则: 1)Actions动作 一个Action实际上就是对应某个事件的过程. 以下给出boot事件的脚本 /* \sys

Android启动过程——init.rc,Zygote,SystemServer

一.Android设备启动经历的三个阶段:Boot Loader:Linux Kernel:Android系统服务:每个阶段都有自己的启动画面. 1.Android中第一个被启动的进程--init,init进程的PID为0,其他的服务都由其进行创建.它是通过解析init.rc脚本来构建出系统的初始运行状态的.init进程是在系统启动启动过程中启动的. 2.init.rc语法规则: 1)Actions动作 一个Action实际上就是相应某个事件的过程.下面给出boot事件的脚本 /* \syste

Android启动过程

Android启动过程 1.  加载Linux内核 2. Android init进程对各种设备进行初始化,运行Android Framework所需用的各种Daemon(后台进程/守护进程),Context Manager,MediaServer,Zygote等 以下是init进程执行的Daemon进程: USB Daemon(usbd): 管理USB连接 Android Debug Bridge Daemon(adbd): Android  Debug Bridge连接管理 Debugger

Android启动过程深入解析

Android启动过程深入解析 2014/06/20 分享到:7 本文由 伯乐在线 - 云海之巅 翻译.未经许可,禁止转载!英文出处:kpbird.欢迎加入翻译小组. 当按下Android设备电源键时究竟发生了什么? Android的启动过程是怎么样的? 什么是Linux内核? 桌面系统linux内核与Android系统linux内核有什么区别? 什么是引导装载程序? 什么是Zygote? 什么是X86以及ARM linux? 什么是init.rc? 什么是系统服务? 当我们想到Android启

去除hadoop启动过程中的警告信息

安装完hadoop后启动hadoop 会报一个Warning.解决办法 vi  /etc/profile 进入编辑模式,添加下面这行 export HADOOP_HOME_WARN_SUPPRESS=1 保存退出 立即生效:source /etc/profile 重新启动hadoop 消除警告成功! 去除hadoop启动过程中的警告信息,布布扣,bubuko.com

去除hadoop的启动过程中警告信息

如何去除hadoop的启动过程中警告信息1.由于警告是在执行start-all.sh启动Hadoop时出现的,所以应该查看start-all.sh,执行more start-all.sh可以看到下面代码:if [ -e "$bin/../libexec/hadoop-config.sh" ]; then  . "$bin"/../libexec/hadoop-config.shelse  . "$bin/hadoop-config.sh"fi根据

Windows平台下Oracle监听服务启动过程中日志输出

Windows平台下Oracle监听服务启动过程中日志输出记录. 日志目录:D:\app\Administrator\diag\tnslsnr\WIN-RU03CB21QGA\listener\trace\listener.log 日志输出内容: Sat Aug 06 20:38:44 2016 系统参数文件为D:\app\Administrator\product\11.2.0\dbhome_1\network\admin\listener.ora 写入d:\app\administrator