
每当活动进入后台(通过主页按钮或返回)时,我保存该时间(以秒为单位),当活动恢复时,我想继续从同一时间运行计时器.用户可能会从列表中选择不同的项目,时间也不同,他也可能会关闭手机…
我可以节省计时器的时间,但是我不能用开始时间设置它.
从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以定义值开始所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)