實現定時器有很多種方式,在這里我簡單的介紹幾種方式
(1)使用Handler + Runnable的方式
Handler handler = new Handler();
Runnable runnable = new Runnable() {
@Override
public void run() {
//你要做的事
//......
System.out.println(Thread.currentThread().getName());
handler.postDelayed(runnable, 1000);
}
};
然后調用handler.post(runnable);就能啟動定時器,這里是每隔1s打印線程名字,從打印中我們可以知道,他并沒有另開線程,而是運行在UI線程當中,當你要取消定時器的時候,只需要調用handler.removeCallbacks(runnable)就可以了。
上面中有一個問題,有時候你會發現removeCallbacks有時候會失效,不能從消息隊列中移除,看下面的demo
圖:兩個按鈕,一個將Runnable加到消息隊列中,一個將Runnable從消息隊列中移除。該Runnable每1秒鐘打印一次日志。
<SPAN style="FONT-FAMILY: Courier New">package com.example.demoactivity;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class TimerActivity extends Activity{
Handler handler = new Handler();
Runnable runnable = new Runnable() {
@Override
public void run() {
System.out.println("update...");
handler.postDelayed(runnable, 1000);
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.timer);
Button mButtonStart = (Button) findViewById(R.id.button1);
Button mButtonStop = (Button) findViewById(R.id.button2);
mButtonStart.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
handler.post(runnable);
}
});
mButtonStop.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
handler.removeCallbacks(runnable);
}
});
}
}</SPAN><SPAN style="FONT-FAMILY: Georgia, 'Times new roman', Times, san-serif">
</SPAN>
結果:
(1)start
主站蜘蛛池模板:
欧美日本高清
|
国产成人精品大尺度在线观看
|
亚洲欧美日韩另类精品一区二区三区
|
青草视频在线免费观看
|
中文字幕精品一区
|
中字一区
|
韩国av片在线观看
|
日日夜夜精品网站
|
国产精品久久久久久无遮挡
|
国产精品久久久久久亚洲调教
|
欧美成人在线免费观看
|
久久久亚洲一区
|
97成人在线视频
|
午夜精品一区
|
午夜精品久久久久久久蜜桃app
|
超碰97av
|
一本色道久久综合狠狠躁的推荐
|
色在线免费视频
|
欧美久久大片
|
欧美一区成人
|
成人免费xxxxx在线视频软件
|
成人精品视频在线
|
av在线天堂
|
久久草在线视频
|
理论片一区
|
中文字幕一区二区三区在线视频
|
手机看片福利一区
|
精品国产一区二区三区粉芽
|
日韩一区二区三区精品
|
91色视频在线观看
|
精品国产不卡一区二区三区
|
播色网|
欧美成人久久
|
免费观看一级特黄欧美大片
|
狠狠色伊人亚洲综合成人
|
69av.com|
午夜资源|
欧美色图一区
|
成人精品一区二区三区
|
国产一区
|
天天射影院
|