首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何获得android系统中的两次时差

如何获得android系统中的两次时差
EN

Stack Overflow用户
提问于 2015-05-14 09:32:20
回答 3查看 102关注 0票数 0

在我的应用程序中有两个按钮。一个显示开始时间,第二个显示单击时的停止时间。我需要得到这两个值,计算差额,然后乘以另一个值。下面是我如何为其中一个标签设置值:

代码语言:javascript
运行
复制
if (v == btnstart) {
    Toast.makeText(getApplicationContext(), "Work Start", Toast.LENGTH_LONG).show();
    Date d=new Date();

    SimpleDateFormat sdf=new SimpleDateFormat("hh:mm a");
    String currentDateTimeString = sdf.format(d);
    txtstart.setText(currentDateTimeString);
}
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-05-14 10:47:38

您可以简单地使用System.currentTimeMillis()进行计算。

代码语言:javascript
运行
复制
if (v == btnstart) {
    Toast.makeText(getApplicationContext(), "Work Start", Toast.LENGTH_LONG).show();
//    Date d=new Date();

//    SimpleDateFormat sdf=new SimpleDateFormat("hh:mm a");
//    String currentDateTimeString = sdf.format(d);
    startTime = System.currentTimeMillis();
    txtstart.setText(currentDateTimeString);
} else if (v == btnDone) {
    Toast.makeText(getApplicationContext(), "Work Done", Toast.LENGTH_LONG).show();
doneTime = System.currentTimeMillis();
takenTime = doneTime - startTime;
txtDone.setText(takenTime);
}
票数 0
EN

Stack Overflow用户

发布于 2015-05-14 10:02:07

当您单击StartTime按钮时,在一个长变量中获取使用System.currentTimeMillis();的时间,因为时间将以毫秒为单位,同样,在StopTimer按钮上,您也可以这样做。在此之后,计算出以毫秒为单位的两次时间差。以防万一,如果您想将毫秒转换为秒,那么将值除以1000。希望这能帮到你。

票数 2
EN

Stack Overflow用户

发布于 2017-04-20 06:14:40

试一试

代码语言:javascript
运行
复制
long start = System.currentTimeMillis();
long end = System.currentTimeMillis();
long diff = end - start;
DateTime dt = new DateTime(diff);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30233847

复制
相关文章

相似问题

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