Android:如何使用计时器

Android:如何使用计时器,第1张

Android:如何使用计时器

这是我的Android计时器类,应该可以正常工作。它每秒发送一个信号。如果您想要其他方案,请更改schedule()调用。

请注意,您无法在计时器线程中更改Android gui内容,这仅在主线程中允许。这就是为什么您必须使用Handler将控制权交还给主线程的原因。

import java.util.ArrayList;import java.util.List;import java.util.Timer;import java.util.TimerTask;import android.os.Handler;import android.os.Message;public class SystemTimerAndroid {    private final Timer clockTimer;    private class Task extends TimerTask {        public void run() { timerHandler.sendEmptyMessage(0);        }    }    private final Handler timerHandler = new Handler() {        public void handleMessage (Message  msg) { // runs in context of the main thread timerSignal();        }    };    private List<SystemTimerListener> clockListener = new ArrayList<SystemTimerListener>();    public SystemTimerAndroid() {        clockTimer = new Timer();        clockTimer.schedule(new Task(), 1000, 1000);    }    private void timerSignal() {        for(SystemTimerListener listener : clockListener) listener.onSystemTimeSignal();          }    public void killTimer() {        clockTimer.cancel();    }    @Override    public void addListener(SystemTimerListener listener) {        clockListener.add(listener); }}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5565565.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-14
下一篇 2022-12-14

发表评论

登录后才能评论

评论列表(0条)

保存