当前位置:操作系统 > 安卓/Android >>

android欢迎界面的编程实现[手相评分-软件实例]

首先,我们可以先看一下“手相评分”这款软件的启动画面。如下:


其实,做欢迎界面的原理非常简单,就是在onCreate函数中启动一个线程,线程体在睡眠几秒钟之后,跳转
到MainActivity即可。具体实现代码如下:
WelcomeActivity.java
[java]
import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.os.Handler; 
import android.os.Message; 
import android.view.Window; 
import android.view.WindowManager; 
/*
 *@author: ZhengHaibo  
 *web:     http://blog.csdn.net/nuptboyzhb
 *mail:    zhb931706659@126.com
 *2013-3-25  Nanjing,njupt,China
 */ 
public class WelcomeActivity extends Activity { 
    private static final int GOTO_MAIN_ACTIVITY = 0; 
 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState); 
        // 设置无标题  
        requestWindowFeature(Window.FEATURE_NO_TITLE); 
        // 设置全屏  
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
                WindowManager.LayoutParams.FLAG_FULLSCREEN); 
        setContentView(R.layout.activity_welcome); 
        MyTimer timer = new MyTimer(); 
        timer.start();//启动线程  
    } 
 
    Handler mHandler = new Handler() { 
        public void handleMessage(Message msg) { 
 
            switch (msg.what) { 
            case GOTO_MAIN_ACTIVITY: 
                Intent intent = new Intent(); 
                intent.setClass(WelcomeActivity.this, SystemMain.class); 
                startActivity(intent); 
                finish(); 
                break; 
            default: 
                break; 
            } 
        }; 
    }; 
 
    public class MyTimer extends Thread { 
        public MyTimer() { 
            // TODO Auto-generated constructor stub  
        } 
        @Override 
        public void run() { 
            // TODO Auto-generated method stub  
            try { 
                Thread.sleep(3000);// 线程暂停时间,单位毫秒  
                mHandler.sendEmptyMessage(GOTO_MAIN_ACTIVITY); 
            } catch (InterruptedException e) { 
                // TODO Auto-generated catch block  
                e.printStackTrace(); 
            } 
        } 
    } 

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.Window;
import android.view.WindowManager;
/*
 *@author: ZhengHaibo 
 *web:     http://blog.csdn.net/nuptboyzhb
 *mail:    zhb931706659@126.com
 *2013-3-25  Nanjing,njupt,China
 */
public class WelcomeActivity extends Activity {
 private static final int GOTO_MAIN_ACTIVITY = 0;

 @Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  // 设置无标题
  requestWindowFeature(Window.FEATURE_NO_TITLE);
  // 设置全屏
  getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
    WindowManager.LayoutParams.FLAG_FULLSCREEN);
  setContentView(R.layout.activity_welcome);
  MyTimer timer = new MyTimer();
  timer.start();//启动线程
 }

 Handler mHandler = new Handler() {
  public void handleMessage(Message msg) {

   switch (msg.what) {
   case GOTO_MAIN_ACTIVITY:
    Intent intent = new Intent();
    intent.setClass(WelcomeActivity.this, SystemMain.class);
    startActivity(intent);
    finish();
    break;
   default:
    break;
   }
  };
 };

 public class MyTimer extends Thread {
  public MyTimer() {
   // TODO Auto-generated constructor stub
  }
  @Override
  public void run() {
   // TODO Auto-generated method stub
   try {
    Thread.sleep(3000);// 线程暂停时间,单位毫秒
    mHandler.sendEmptyMessage(GOTO_MAIN_ACTIVITY);
   } catch (InterruptedException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
  }
 }
}

布局代码activity_welcome.xml
[html]
<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="horizontal" 
    android:background="@drawable/welcome" 
    xmlns:android="http:/

补充:移动开发 , Android ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,