1.新建一个线程,使用handle的延缓运行线程

new Handler().postDelayed(new Runnable() {
// 为了减少代码使用匿名Handler创建一个延时的调用
public void run() {
Intent i = new Intent(SplashActivity.this, MainActivity.class );
startActivity(i);
finish();
overridePendingTransition(R.anim. in_1, R.anim.out_1);
}
}, 2000 );//延缓2秒

2.通过handler延缓发送广播

public class SplashActivity extends Activity {

       private Handler handler;
private final int NOTIFY_CLOSE_ACTIVITY = 1;
private int SPLASH_DISPLAY_LENGHT = 2000; // 延迟两秒 @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash); initialize();
handler.removeMessages(NOTIFY_CLOSE_ACTIVITY);
handler.sendEmptyMessageDelayed(NOTIFY_CLOSE_ACTIVITY, SPLASH_DISPLAY_LENGHT); } private void initialize() {
handler = new Handler() {
@Override
public void handleMessage(Message msg) {
// TODO Auto-generated method stub
super.handleMessage(msg);
switch (msg.what ) {
case NOTIFY_CLOSE_ACTIVITY :
goMain();
break;
default:
break;
}
}
};
} private void goMain(){
Intent intent = new Intent(SplashActivity.this, MainActivity.class );
this.startActivity(intent);
this.finish();
};
}

3.使用动画

public class SplashActivity extends Activity {

       @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); View view = View. inflate(this, R.layout. activity_splash, null);
setContentView(view); //动画效果参数直接定义
Animation animation = new AlphaAnimation(0.1f, 1.0f);
animation.setDuration(5000);
view.setAnimation(animation); animation.setAnimationListener( new AnimationListener() { @Override
public void onAnimationStart(Animation animation) {
} @Override
public void onAnimationRepeat(Animation animation) {
} @Override
public void onAnimationEnd(Animation animation) {
goMain();
}
}); } private void goMain(){
Intent intent = new Intent(SplashActivity.this, MainActivity.class );
this.startActivity(intent);
this.finish();
};
}

4.使用CountDownTimer http://www.cnblogs.com/over140/archive/2011/12/20/2294220.html

定时执行在一段时候后停止的倒计时,在倒计时执行过程中会在固定间隔时间得到通知(译者:触发onTick方法)

        new CountDownTimer(3000 ,1000){

            @Override
public void onTick(long millisUntilFinished) {
// TODO Auto-generated method stub
System.out.println("-------onFinish---------");
} @Override
public void onFinish() {
// TODO Auto-generated method stub
System.out.println("-------onFinish---------");
} }.start();

Android 应用页面延缓载入的更多相关文章

  1. Visual Studio跨平台开发实战(5) - Xamarin Android多页面应用程式开发

    原文 Visual Studio跨平台开发实战(5) - Xamarin Android多页面应用程式开发 前言 大部份的Andr​​oid 都具有实体或虚拟的Back键. 因此在处理多页面应用程式时 ...

  2. Android实现页面跳转、ListView及其事件

    Android实现页面跳转.ListView及其事件 开发工具:Andorid Studio 1.3 运行环境:Android 4.4 KitKat 工程内容 进入主页面后,使用ListView实现特 ...

  3. Android 一个页面上下两个ListView的页面显示

    Android 一个页面上下两个ListView,当上面的ListView过长时,下面的List基本没有了滑动空间,查阅网上资料,解决办法基本是采用ScrollView做页面滑动,notifyData ...

  4. android一个页面上多个listview

    android一个页面上多个listview,在滚动的时候,需要两个listview能够一起滚动,看起来是一个view. 这个功能的具体实现,参考: http://blog.csdn.net/xia2 ...

  5. android 布局页面文件出错故障排除Exception raised during rendering: java.lang.System.arraycopy([CI[CII)V

    今天在看布局文件的时候出现 android 布局页面文件出错故障排除Exception raised during rendering: java.lang.System.arraycopy([CI[ ...

  6. Android执行时ART载入类和方法的过程分析

    在前一篇文章中.我们通过分析OAT文件的载入过程,认识了OAT文件的格式,当中包括了原始的DEX文件. 既然ART运行时运行的都是翻译DEX字节码后得到的本地机器指令了.为什么还须要在OAT文件里包括 ...

  7. U8800 手机恢复出厂设置出现轻触Android开始页面 处理办法

    U8800 恢复出厂设置出现轻触Android开始页面处理办法 问题现象 Huawei 手机U8800刷机后,点击恢复出厂默认设置后,出现了一个一直停留在“欢迎使用Android 轻触 Android ...

  8. Android刷新页面

    代码改变世界 Android刷新页面 继承 extends Activity /*** 调用onCreate(), 目的是刷新数据,  从另一activity界面返回到该activity界面时, 此方 ...

  9. Android滚动页面位置指示器:CircleIndicator

     Android滚动页面位置指示器:CircleIndicator CircleIndicator是github上的一个开源的用于页面滚动时候的位置指示器,指示当前页面在总的页面中的位置和前后位置 ...

随机推荐

  1. bootstrap 正则表达式

    <asp:TextBox runat="server"  title="邮箱正确格式:xxx@xxx.xxx" class="form-cont ...

  2. OC - 5.内存管理

    一.引用计数器 1> 栈和堆 栈 ① 主要存储局部变量 ② 内存自动回收 堆 ① 主要存储需要动态分配内存的变量 ② 需要手动回收内存,是OC内存管理的对象 2> 简介 作用 ① 表示对象 ...

  3. iOS .pch文件的使用

    什么是.pch文件预编译头文件(一般扩展名为.PCH),是把一个工程中较稳定的代码预先编译好放在一个文件(.PCH)里.这些预先编译好的代码可以是任何的C/C++代码--甚至可以是inline函数,只 ...

  4. 理解RunLoop

    一.什么是RunLoop? 从字面意思上来看,RunLoop就是运行循环,跑圈的意思. 我们都知道,一般来说一个线程执行一次任务之后便会退出,在iOS中,如果主线程只执行一次便退出的话也就意味着程序的 ...

  5. MYSQL连接数据库

    web.config <connectionStrings>   <add name="MysqlDB" connectionString="Data ...

  6. spring Aop 注解

    个人理解: spring Aop 是什么:面向切面编程,类似于自定义拦截操作,支持拦截之前操作@Before,拦截之后操作@After,拦截环绕操作@Around. 什么情况下使用spring Aop ...

  7. 第3章文件I/O总结

    1. open和create函数在fcntl.h中,close.lseek.read.write函数在unistd.h中 open函数通过进程有效用户ID判断读文件的权限 可以调用access函数判断 ...

  8. Jquery 动态生成表单 并将表单数据 批量通过Ajax插入到数据库

    利用Jquery 动态生成 Table 表单 之后利用each 方法来遍历所有文本框获取文本的value值  并通过Ajax 将数据 提交到Web服务里把数据插入数据库 Html页面 <!DOC ...

  9. ajax GET和POST请求web api 的几种方式

    GET请求 1.无参数get请求 一般get请求有两种写法,一种是 $.get()   一种是$.ajax({type:"get"}), 我个人比较喜欢用后者. 下面例子主要是ge ...

  10. 简易ORM(基于注解)

    这是从我们现有项目做的一定的改进准备做成IDE插件 类似getter和setter的生成 1.定义实体类 通过注解说明其表名和字段名(SOURCE类型的注解 不需要运行时使用)@TableName(& ...