Android 延迟发送消息的用法
用法一
Runnable mRunnable = new Runnable() {
@Override
public void run() {
// TODO
}
};
mHandler.removeCallbacks(mRunnable);//取消待执行的消息
mHandler.postDelayed(mRunnable, 500/* delayMillis */);
用法二
通过匿名类
mHandler.postDelayed(new Runnable() {
@Override
public void run() {
// TODO
}
}, 500 /* delayMillis */);
大多情况需要采用用法一
Handler类
android.os.Handler
android.os.Handler.Callback
android.os.Handler.handleMessage(Message)
android.os.Handler.dispatchMessage(Message)
android.os.Handler.Handler()
android.os.Handler.Handler(Callback)
android.os.Handler.Handler(Looper)
android.os.Handler.Handler(Looper, Callback)
android.os.Handler.getMessageName(Message)
android.os.Handler.obtainMessage()
android.os.Handler.obtainMessage(int)
android.os.Handler.obtainMessage(int, Object)
android.os.Handler.obtainMessage(int, int, int)
android.os.Handler.obtainMessage(int, int, int, Object)
android.os.Handler.post(Runnable)
android.os.Handler.postAtTime(Runnable, long)
android.os.Handler.postAtTime(Runnable, Object, long)
android.os.Handler.postDelayed(Runnable, long)
android.os.Handler.postAtFrontOfQueue(Runnable)
android.os.Handler.removeCallbacks(Runnable)
android.os.Handler.removeCallbacks(Runnable, Object)
android.os.Handler.sendMessage(Message)
android.os.Handler.sendEmptyMessage(int)
android.os.Handler.sendEmptyMessageDelayed(int, long)
android.os.Handler.sendEmptyMessageAtTime(int, long)
android.os.Handler.sendMessageDelayed(Message, long)
android.os.Handler.sendMessageAtTime(Message, long)
android.os.Handler.sendMessageAtFrontOfQueue(Message)
android.os.Handler.removeMessages(int)
android.os.Handler.removeMessages(int, Object)
android.os.Handler.removeCallbacksAndMessages(Object)
android.os.Handler.hasMessages(int)
android.os.Handler.hasMessages(int, Object)
android.os.Handler.getLooper()
android.os.Handler.dump(Printer, String)
android.os.Handler.toString()