从我所做的项目来看,几乎都少不了开始页面,启动页面的作用能够打广告、发公告、做缓存处理、更新数据等等!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) { <span style="white-space:pre"> </span>// TODO Auto-generated method stub <span style="white-space:pre"> </span>super.onCreate(savedInstanceState); <span style="white-space:pre"> </span>setContentView(R.layout.welcome); <span style="white-space:pre"> </span>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"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > <ImageView android:id="@+id/iv_splash_mainview" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@drawable/splash_bg" android:src="@drawable/splash_sheep_n" /> </LinearLayout>
开始动画页面splashActivity.java
public class <span style="font-family: Arial, Helvetica, sans-serif;">splash</span><span style="font-family: Arial, Helvetica, sans-serif;">Activity extends Activity {</span> 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(<span style="font-family: Arial, Helvetica, sans-serif;">splash</span><span style="font-family: Arial, Helvetica, sans-serif;">Activity </span><span style="font-family: Arial, Helvetica, sans-serif;">.this,MainActivity.class);</span> 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); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
本文向大家介绍Android Intent实现页面跳转的两种方法,包括了Android Intent实现页面跳转的两种方法的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了Intent实现页面跳转的两种的方法,供大家参考,具体内容如下 下图中两个不同的方法就是两种页面之间跳转的情况 1).跳转不返回数据 2).跳转返回数据 实例: 第一种启动方式(跳转不返回数据) 第二种启动方式(跳转
本文向大家介绍js实现页面跳转重定向的几种方式,包括了js实现页面跳转重定向的几种方式的使用技巧和注意事项,需要的朋友参考一下 第一种: 第二种: 第三种: 第四种: 第五种:
本文向大家介绍查询SQLServer启动时间的三种方法,包括了查询SQLServer启动时间的三种方法的使用技巧和注意事项,需要的朋友参考一下 上午在分析索引的使用情况,想看一下数据库什么时候启动的,确保统计的数据没有问题,可以使用下面三种方法查询:
本文向大家介绍Android三种实现定时器的方法,包括了Android三种实现定时器的方法的使用技巧和注意事项,需要的朋友参考一下 方法一、使用Handler和Thread(线程)实现定时器 方法二、使用Handler类自带的postDelyed实现定时器 方法三、使用Handler、Timer和TimerTask三个Android类实现定时器
本文向大家介绍使用指定的JDK启动IDEA的三种方法,包括了使用指定的JDK启动IDEA的三种方法的使用技巧和注意事项,需要的朋友参考一下 IDEA 64 位 版本对 JDK 版本有要求,不符合的 JDK 将无法启动。 很简单的一个问题,如何使用指定的 JDK 启动 IDEA? 上面这个问题很简单 但是在特殊环境下可能不太容易。 一、方法一,配置 JDK 最简单的方法就是配置系统的环境变量(JAV
本文向大家介绍Android Intent实现页面跳转的方法示例,包括了Android Intent实现页面跳转的方法示例的使用技巧和注意事项,需要的朋友参考一下 应朋友们反馈的Android基础薄弱的问题,决定出一套Android基础教程,帮助大家复习,巩固Android基础,今天要讲的是Android中的Intent实现Android间的页面跳转。 增加Acrivity页面时,首先需要在Mai