zoukankan      html  css  js  c++  java
  • Android启动过程中背景图片显示

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

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



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


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

    LoadActivity.java

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


    load.xml

    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

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


    main.xml

    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

    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.       
    6.     <style name="MyTheme.NoTitleBar.CustomBackground" parent="@android:Theme.Black">    
    7.         <item name="android:windowBackground">@drawable/load</item>    
    8.         <item name="android:windowNoTitle">true</item>    
    9.         <item name="android:windowFullscreen">true</item>    
    10.         <item name="android:windowContentOverlay">@null</item>    
    11.     </style>  
    12. </resources>  


    5 配置AndroidManifest.xml

    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.   
    8.     <application android:icon="@drawable/icon" android:label="@string/app_name">  
    9.          
    10.          <activity android:name=".LoadActivity"  
    11.                   android:configChanges="orientation|keyboardHidden"  
    12.                   android:theme="@style/MyTheme.NoTitleBar.CustomBackground">  
    13.             <intent-filter>  
    14.                 <action android:name="android.intent.action.MAIN" />  
    15.                 <category android:name="android.intent.category.LAUNCHER" />  
    16.             </intent-filter>  
    17.         </activity>  
    18.           
    19.         <activity android:name=".MainActivity">  
    20.         </activity>  
    21.   
    22.     </application>  
    23. </manifest>  


    6 OK, 编译运行

    启动过程中:



    完成启动:




  • 相关阅读:
    CentOs 安装 Mysql
    安装 CentOs 系统 及 Python 及 Scrapy 框架
    对IOC的理解
    SQL语句优化 -- 以Mysql为例
    探讨 java中 接口和对象的关系
    Java中组合 设计技巧 实例
    【题解】Arpa's letter-marked tree and Mehrdad's Dokhtar-kosh paths Codeforces 741D DSU on Tree
    【题解】Tree-String Problem Codeforces 291E AC自动机
    【题解】打地鼠 SDOI2011 模拟 行列无关
    【题解】新型城市化 HAOI2017 网络流 二分图最大匹配 强连通分量
  • 原文地址:https://www.cnblogs.com/webu/p/3008567.html
Copyright © 2011-2022 走看看