【Android】应用启动画面

  几乎所有的Android应用程序都会有一个启动画面,展示自己的LOGO,本版信息,或者更人性化一点的,在很长的加载信息中,变换一些显示的文字等,让无聊的等待时间添加点调味剂。

  具体实现来说,应该创建一个没有Title的Activity,显示图片,文字。其中创建新的线程去加载数据,检测设备的良好等,等一切就绪的时候启动新的Activity。

代码如下 

  AndroidManifast.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.dnfscripts"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="8" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.example.dnfscripts.LoadActivity"
            android:theme="@android:style/Theme.NoTitleBar">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name="com.example.dnfscripts.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

其中,声明两个Activity,一个用来作为启动画面,另外一个是启动之后,显示的主画面。

android:screenOrientation="portrait"    //屏幕始终纵向

"landscape" //屏幕始终横向

android:theme="@android:style/Theme.NotitleBar" //屏幕没有标题栏

load.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:gravity="center|center"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/index" >

</LinearLayout>

该load.xml是启动Activity的样式表达,其中

android:background="@drawable/load"  //设置load.png图片为背景图

LoadActivity.java

package com.example.dnfscripts;

import android.app.Activity;
import android.content.Intent;
import android.graphics.PixelFormat;
import android.os.Bundle;
import android.os.Handler;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;

public class LoadActivity extends Activity {

    private static final int LOAD_DISPLAY_TIME = 5000;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        getWindow().setFormat(PixelFormat.RGBA_8888);
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_DITHER);
        setContentView(R.layout.activity_load);
        new Handler().postDelayed(new Runnable() {

            @Override
            public void run() {

                /* Create an Intent that will start the Main WordPress Activity. */
                 Intent mainIntent = new Intent(LoadActivity.this, MainActivity.class);
                 LoadActivity.this.startActivity(mainIntent);
                 LoadActivity.this.finish();
            }
        },LOAD_DISPLAY_TIME); //5000 for release
    }

    @Override
    public void onCreateContextMenu(ContextMenu menu, View v,
            ContextMenuInfo menuInfo) {
        // TODO Auto-generated method stub
        super.onCreateContextMenu(menu, v, menuInfo);
    }

}

  其中,Handler().postDelayed(Runnable r, long delayMillis)

//Causes the Runnable r to be added to the message queue, to be run after the specified amount of time elapses.

  现在的代码只实现了很简单Load页面的显示。

时间: 2024-11-08 15:41:26

【Android】应用启动画面的相关文章

Android程序启动画面 Splash

很多应用都会有一个启动界面.欢迎画面慢慢隐现,然后慢慢消隐. 我的方式是使用两个Activity,程序启动时候load第一张Activity,然后由tick触发N秒钟后startActivity另外一张Activity. splash.java package com.yuyidong.second; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import andro

Android App启动画面的制作

安卓软件启动时,都会有一个全屏的带LOGO,软件名称,版本号的启动屏幕.这个屏幕是怎么做出来的呢!!下面就一步一步的来! 一.新建项目 打开eclipse,新建一个Android项目,不建Activity.这时就出现一个空白的项目. 1.新建Activity文件 点击项目管理里的res,进入layout,右键点击NEW->Project->Android->Android XML Layout File 按步骤新建一个Activity的XML文件 我是选择新建了一个RelativeLay

从零开始学Xamarin.Forms(三) Android 制作启动画面

Xamarin.Forms 在启动的时候相当慢,必须添加一个启动界面,步骤如下: 1.将启动画面的图片命名为:splash_screen.png,并拷贝到 Resources 文件夹下的相应 Drawable 文件夹中: 2.在其中的 Drawable 文件夹下创建 splashscreen.xml ,内容为: <?xml version="1.0" encoding="utf-8" ?> <bitmap xmlns:android="h

Android创建启动画面

每一个Android应用启动之后都会出现一个Splash启动界面,显示产品的LOGO.公司的LOGO或者开发人员信息.假设应用程序启动时间比較长,那么启动界面就是一个非常好的东西,能够让用户耐心等待这段枯燥的时间. 1.制作Splash界面 突出产品LOGO,产品名称,产品主要特色: 注明产品的版本号信息: 注明公司信息或者开发人员信息: 背景图片,亦能够用背景颜色取代: 2.处理后台资源 大多数的Splash界面都是会等待一定时间,然后切换到下一个界面: 事实上,在这段时间里,能够对系统状况进

【Android笔记】Android创建启动画面

每个Android应用启动之后都会出现一个Splash启动界面,显示产品的LOGO.公司的LOGO或者开发者信息.如果应用程序启动时间比较长,那么启动界面就是一个很好的东西,可以让用户耐心等待这段枯燥的时间. 1.制作Splash界面 突出产品LOGO,产品名称,产品主要特色: 注明产品的版本信息: 注明公司信息或者开发者信息: 背景图片,亦可以用背景颜色代替: 2.处理后台资源 大多数的Splash界面都是会等待一定时间,然后切换到下一个界面: 其实,在这段时间里,可以对系统状况进行检测,比如

Xamarin.Forms (Android制作启动画面)

http://blog.csdn.net/zapzqc/article/details/38496117 Xamarin.Forms 在启动的时候相当慢,必须添加一个启动界面,步骤如下: 1.将启动画面的图片命名为:splash_screen.png,并拷贝到 Resources 文件夹下的相应 Drawable 文件夹中: 2.在其中的 Drawable 文件夹下创建 splashscreen.xml ,内容为: [html] view plain copy <?xml version="

Android App启动画面实现

app打开时都会有个启动画面(一幅图.一个提示之类的),画面停留2-3秒,然后结束掉自己,启动要呈现的第一个activity. Handler的postDelayed方法就很适合实现这个功能.它相当于一个定时器,可以使所在绑定了该handler的所在线程延时执行一段代码. postDelayed(Runnable r,long uptimeMillis); 第一个参数是要延时执行的代码段.第二个参数是要延长多少秒.     private Handler mHandler = new Handl

我的Android最佳实践之—— Android启动画面的实现方法

本文实例讲述了Android启动画面的实现方法.分享给大家供大家参考.具体分析如下: 在应用程序中经常用到启动画面,会启动一个后台线程为主程序的运行准备资源.Android要实现启动画面可以这样做: 这是splash.xml布局文件的代码: <LinearLayout   xmlns:android="http://schemas.android.com/apk/res/android"   android:layout_height="fill_parent"

Android 启动画面

如果你的程序初始化时间过长,那么在初始化之前,程序会现实一个空白的activity页,十分难看. 添加一个启动画面的方法就是为响应的activity加入自定义的Theme,并在theme中设定 android:windowBackground 属性,这个属性接收一个图像资源,在activity初始化前,这个图像就会被载入到屏幕上,因此,出现了启动画面的效果.