使用Handler实现定时器

来源:互联网 发布:营销论文题目 大数据 编辑:程序博客网 时间:2024/06/05 10:48

总觉得使用Android定时器非常麻烦,其实使用Handler可以实现一个定时器(在主线程中):

class Timer {    public interface OnTimeroutListener {        void onTimeout(Timer timer);    }    private static final int TIMER_MSG_ID = 1;    private OnTimeroutListener mListener;    private mHandler = new Handler() {        @Overwrite        public void handlerMessage(Message msg) {            switch (msg.what) {            case TIMER_MSG_ID:                 mListener.onTimeout(Timer.this);            break;            }        }    }    public Timer(OnTimeroutListener l) {        mListener = l;    }    public void startTimer(int interval) {        Message msg = new Message();        msg.what = interval;        mHandler.sendMessageDelayed(msg, interval);    }    public void cancelTimer() {        mHandler.removeMessages(TIMER_MSG_ID);    }}

原创粉丝点击