android中一种欢迎界面模式
来源:互联网 发布:java语言开发游戏 编辑:程序博客网 时间:2024/06/05 20:01
在android应用中,在进入主界面之前经常会有一段用于过渡的欢迎界面,下面介绍一种,代码如下:
WelcomeActivity:
package com.home.welcompage;import java.util.Random;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.os.Handler;import android.os.Message;import android.view.View;import android.view.View.OnClickListener;import android.view.animation.Animation;import android.view.animation.AnimationUtils;import android.widget.ImageView;import android.widget.LinearLayout;public class WelcomeActivity extends Activity {private ImageView welcomeImage;private Thread t1, t2;private Handler handler;private int rand = new Random().nextInt(4);;private Animation animation;private int pageNumber = 1;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.welcome);welcomeImage = (ImageView) findViewById(R.id.welcome_iv);animation = AnimationUtils.loadAnimation(this, R.anim.scal_anim);LinearLayout layout = (LinearLayout) findViewById(R.id.welcome_layout);layout.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {if (pageNumber == 2) {t1.interrupt();t2.interrupt();turnPage();// 跳转界面}}});handler = new Handler() {@Overridepublic void handleMessage(Message msg) {super.handleMessage(msg);if (msg.what == 0) {switch (rand) {case 0:// 设置动画背景startAnimation(R.drawable.back1);break;case 1:startAnimation(R.drawable.back2);break;case 2:startAnimation(R.drawable.back3);break;case 3:startAnimation(R.drawable.back4);break;default:break;}}}};t1 = new Thread(new Runnable() {@Overridepublic void run() {try {Thread.sleep(3000);handler.sendEmptyMessage(0);} catch (InterruptedException e) {e.printStackTrace();}}});t1.start();t2 = new Thread(new Runnable() {@Overridepublic void run() {try {Thread.sleep(4000);turnPage();// 跳转界面} catch (InterruptedException e) {e.printStackTrace();}}});}/** * 跳转到主界面 */private void turnPage() {Intent intent = new Intent(WelcomeActivity.this, MainActivity.class);WelcomeActivity.this.startActivity(intent);WelcomeActivity.this.finish();}/** * 设置动画背景 * * @param imageSource */private void startAnimation(int imageSource) {welcomeImage.setBackgroundDrawable(getResources().getDrawable(imageSource));welcomeImage.setAnimation(animation);welcomeImage.startAnimation(animation);t2.start();pageNumber = 2;}}welcome.xml:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:id="@+id/welcome_layout"> <ImageView android:id="@+id/welcome_iv" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/logo"/></LinearLayout>
主界面省略。
动画:scal_anim.xml:
<?xml version="1.0" encoding="utf-8"?><set xmlns:android="http://schemas.android.com/apk/res/android" > <scale android:duration="6000" android:fromXScale="1.0" android:fromYScale="1.0" android:pivotX="50%" android:pivotY="50%" android:toXScale="1.2" android:toYScale="1.2" /></set>
- android中一种欢迎界面模式
- Android一种欢迎界面全屏显示方法
- android中欢迎界面的实现
- android中 欢迎界面的实现
- Android中欢迎界面背景图片放大效果
- android Camera 中添加一种场景模式
- android欢迎界面+登录界面
- android 滑动欢迎界面
- android欢迎界面
- Android 开机欢迎界面
- android欢迎界面
- android 实现欢迎界面
- android 滑动欢迎界面
- Android 欢迎界面设置
- android欢迎界面
- android 欢迎界面
- android--欢迎界面
- Android欢迎界面
- dialog.dismiss()
- Android 权限申请
- 【文件】FAT文件系统分析
- 关于javascript中apply()和call()方法的区别
- 学用 html5 canvas 与 javascript 开发画图程序
- android中一种欢迎界面模式
- 命令行中有空格不能执行
- Android 软件自动更新功能的实现
- Spring源码解析之:Spring Security启动细节和工作模式
- Django 1.5.4 专题18 User Profile
- unity 3d与ios代码相互调用
- 获取状态栏高度
- 实现抽屉方式的两种方法【未完成】
- 大厅里有100盏灯,每盏灯都编了号码,分别为1-100。每盏灯由一个开关来控制。