Android Chronometer以定义值开始

Android Chronometer以定义值开始,第1张

概述我有一个应用程序,我正在向用户显示他正在做的事情的计时器. 每当活动进入后台(通过主页按钮或返回)时,我保存该时间(以秒为单位),当活动恢复时,我想继续从同一时间运行计时器.用户可能会从列表中选择不同的项目,时间也不同,他也可能会关闭手机… 我可以节省计时器的时间,但是我不能用开始时间设置它. 从Chornometer API开始,方法setBase()指出: Set the time that @H_404_4@ 我有一个应用程序,我正在向用户显示他正在做的事情的计时器.
每当活动进入后台(通过主页按钮或返回)时,我保存该时间(以秒为单位),当活动恢复时,我想继续从同一时间运行计时器.用户可能会从列表中选择不同的项目,时间也不同,他也可能会关闭手机…
我可以节省计时器的时间,但是我不能用开始时间设置它.

从Chornometer API开始,方法setBase()指出:

Set the time that the count-up timer is in reference to.

根据我的理解,这意味着如果我将此值设置为currentTime,它将从0开始计数.
现在,如果我希望它以值17s开始,我考虑将基数设置为当前时间减去17秒前的时间.所以类似于:

setBase(system.currentTimeMillis() - (17 * 1000)).

但是这不起作用,它始终以0开始!

我在这里阅读了一些其他的主题,但没有一个答案有帮助.它始终以0开头!

提前致谢.

@H_404_4@解决方法 我想你将不得不自己跟踪一些时间标记.

Chronometer myChrono;long baseTime;long stopTime;long elapsedtime;

设置基准时间时,您要使用:

baseTime = SystemClock.elapsedRealtime() - stopTime;myChrono.setBase(baseTime);

如果您想查看已经过了多少时间,请使用:

elapsedtime = SystemClock.elapsedRealtime() - myChrono.getBase();

看看SystemClock doc.

@H_404_4@ @H_404_4@ @H_404_4@ @H_404_4@ 总结

以上是内存溢出为你收集整理的Android Chronometer以定义值开始全部内容,希望文章能够帮你解决Android Chronometer以定义值开始所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

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

原文地址:https://54852.com/web/1122962.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存