postDelayed方法和removeCallbacks方法的使用:
方法postDelayed的作用是延迟多少毫秒后开始运行,而removeCallbacks方法是删除指定的Runnable对象,使线程对象停止运行。
postDelayed使用方法:
<strong> </strong><pre name="code" class="java" style="font-weight: bold;">package com.way.activity; import android.content.Intent; import android.os.Bundle; import android.os.Handler; import android.support.v4.app.FragmentActivity; import android.text.TextUtils; import com.way.util.PreferenceConstants; import com.way.util.PreferenceUtils; import com.way.xx.R; public class SplashActivity extends FragmentActivity { private Handler mHandler; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.splash); mHandler = new Handler(); String password = PreferenceUtils.getPrefString(this, PreferenceConstants.PASSWORD, ""); if (!TextUtils.isEmpty(password)) { mHandler.postDelayed(gotoMainAct, 3000); } else { mHandler.postDelayed(gotoLoginAct, 3000); } } Runnable gotoLoginAct = new Runnable() { @Override public void run() { startActivity(new Intent(SplashActivity.this, LoginActivity.class)); finish(); } }; Runnable gotoMainAct = new Runnable() { @Override public void run() { startActivity(new Intent(SplashActivity.this, MainActivity.class)); finish(); } }; }removeCallbacks使用方法:
handler.removeCallbacks(gotoMainAct);