首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android StopWatch - Time增长非常快

Android StopWatch - Time增长非常快
EN

Stack Overflow用户
提问于 2012-05-12 19:51:04
回答 1查看 1.5K关注 0票数 0

我正在为android做一个秒表应用程序。我有一个用于启动和停止的按钮。我的问题是时间增长得非常快。这是我错的地方。下面是代码:

代码语言:javascript
复制
        final Runnable updater = new Runnable() {

        public void run() {

            if (startIsPressed) {
                time = SystemClock.elapsedRealtime() - initStart + startPointTime;
                startPointTime = time;
            } else {
                time = startPointTime;
            }

            hh = time / 3600000;
            hours.setText("" + formatter.format(hh));
            time = time - hh * 3600000;

            mm = time / 60000;
            minutes.setText("" + formatter.format(mm));
            time = time - mm * 60000;

            ss = time / 1000;
            seconds.setText("" + formatter.format(ss));
            time = time - ss * 1000;

            millis.setText("" + formatter.format(time / 10));

            handler.postDelayed(this, 30);
        }
    };
    startBtn.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            if (!startIsPressed) {
                startIsPressed = true;
                startBtn.setText(R.string.stop);
                initStart = SystemClock.elapsedRealtime();
                handler.post(updater);
            } else {
                startIsPressed = false;
                startBtn.setText(R.string.start);
                handler.post(updater);
            }
        }
    });
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-05-12 20:33:31

正如doc所说的,postDelayed会导致Runnable r被添加到消息队列中,在指定的时间量之后运行,每隔1秒使用一次您的计时器: elapses.Update

代码语言:javascript
复制
handler.postDelayed(this, 100); //100 milliseconds refresh rate

而不是

代码语言:javascript
复制
handler.postDelayed(this, 30); //30 milliseconds refresh rate

并参阅秒表逻辑here

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10563459

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档