劳拉失魂记,清炖鱼的做法视频,东山再起的意思
从我所做的项目来看,几乎都少不了开始页面,启动页面的作用能够打广告、发公告、做缓存处理、更新数据等等!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 Manifest中meta-data扩展元素数据的配置与获取方式
Android实现获取meta-data和build.gradle的值
Android获取清单文件中的meta-data,解决碰到数值为null的问题
解决webview 第二次调用loadUrl页面不刷新的问题
解决Android WebView拦截url,视频播放加载失败的问题
Android webview加载https链接错误或无响应的解决
网友评论