从我所做的项目来看,几乎都少不了开始页面,启动页面的作用能够打广告、发公告、做缓存处理、更新数据等等!Android实现开始页面的跳转,就是打开一个Android手机APP的欢迎界面后跳转到指定界面,下面就让我简单介绍下比较常用的开始页面的跳转方法吧。

一、在onCreate里设置个Timer,然后建立Intent指向你要调用的Activity。设置Timer 任意秒后执行startActivity即可!(Timer是一种定时器工具,用来在一个后台线程计划执行指定任务,它可以计划执行一个任务一次或反复多次)

 final Intent it = new Intent(this, Activity1.class); //你要转向的Activity       Timer timer = new Timer();      TimerTask task = new TimerTask() {        @Override        public void run() {         startActivity(it); //执行         }       };     timer.schedule(task, 1000 * 10); //10秒后 

二、利用子线程在run方法中设置跳转,用Handler来执行。

public class WelcomeActivity extends Activity {  @Override protected void onCreate(Bundle savedInstanceState) {  // TODO Auto-generated method stub  super.onCreate(savedInstanceState);  setContentView(R.layout.welcome);  new Handler().postDelayed(r, 1000);// 1秒后关闭,并跳转到主页面 }  Runnable r = new Runnable() {  @Override  public void run() {  // TODO Auto-generated method stub  Intent intent = new Intent();  intent.setClass(WelcomeActivity.this, MainActivity.class);  startActivity(intent);  finish();    }   }; } 

三、以动画形式(旋转、缩放等)作为开始页面,这种方法在项目中也是比较常用的,比第一种方法多了动画集,具体看代码注释!

开始动画页面布局splashMain.xml

<?xml version="1.0" encoding="utf-8"?>       

开始动画页面splashActivity.java

public class splashActivity extends Activity {      private ImageView iv_mainview;   private AnimationSet as;    @Override   protected void onCreate(Bundle savedInstanceState) {     // TODO Auto-generated method stub     super.onCreate(savedInstanceState);          //去掉标题�     //requestWindowFeature(Window.FEATURE_NO_TITLE);     initView();// 初始化界面      startAnimation();//开始播放动画       initEvent();//初始化事件   }       private void initEvent() {     //1、监听动画播放完的事件,只是一处用到事件就用匿名类对象,多处声明成员变量用      as.setAnimationListener(new AnimationListener() {        @Override       public void onAnimationStart(Animation animation) {                }        @Override       public void onAnimationRepeat(Animation animation) {        }        //监听动画播放完       @Override       public void onAnimationEnd(Animation animation) {                  //          Intent main = new Intent(splashActivity .this,MainActivity.class);         startActivity(main);//主界面                //关闭自己         finish();       }     });   }    /**    * 开始播放动画:旋转,缩放,渐变    */   private void startAnimation() {     // false 代表动画集中每种动画都采用各自的动画插入器(数字函数)     as = new AnimationSet(false);      //旋转动画,锚点     RotateAnimation ra = new RotateAnimation(         0, 360,         Animation.RELATIVE_TO_SELF, 0.5f,         Animation.RELATIVE_TO_SELF,0.5f);//设置锚点为图片的中心点     // 设置动画播放时间     ra.setDuration(2000);     ra.setFillAfter(true);//动画播放完之后,停留在当前状态       // 添加到动画集     as.addAnimation(ra);      // 渐变动画     AlphaAnimation aa = new AlphaAnimation(0, 1);//由完全透明到不透明      //      aa.setDuration(2000);     aa.setFillAfter(true);//      //      as.addAnimation(aa);      // 缩放动画     ScaleAnimation sa = new ScaleAnimation(         0, 1, 0, 1,         Animation.RELATIVE_TO_SELF, 0.5f,          Animation.RELATIVE_TO_SELF, 0.5f);     //      sa.setDuration(2000);     sa.setFillAfter(true);//      //      as.addAnimation(sa);      // 播放动画     iv_mainview.startAnimation(as);      // 动画播完进入下一个界面 :向导界面或者主界面     //1、监听动画播放完的事件         }    private void initView() {     // 设置主界面     setContentView(R.layout.onemain);      // 获取背景图片     iv_mainview = (ImageView) findViewById(R.id.iv_splash_mainview);    }             } 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多相关文章

  1. 安全新手入坑——HTML标签
  2. Nginx系列教程(四)| 一文带你读懂Nginx的动静分离
  3. Android(安卓)实现书籍翻页效果----升级篇
  4. android中push机制实现:搭建XMPP协议,实现自主推送消息到手机
  5. 让你自己编写的Android的Launcher成为系统中第一个启动应用程序
  6. android 播放GIF动画
  7. 理解UI线程——swt, Android, 和Swing的UI机理
  8. android离开一个页面时关闭子线程
  9. Android再按一次完全退出程序及禁止返回上一个界面等

随机推荐

  1. Android 如何获取所有的wifi连接历史记录
  2. Android——文件路径(/mnt/sdcard/...)、
  3. 快速开发框架Afinal的使用(数据库操作,HTTP
  4. 浅谈android应用之编程语言
  5. 菜鸟初识AIDL进程通信
  6. [置顶] Android之高仿手机QQ聊天
  7. Android VCard通讯录导入导出详解
  8. Android自定义控件一简介
  9. 《第一行代码》学习笔记一
  10. Android中Intent的显示和隐式使用