【发布时间】:2014-04-05 03:27:50
【问题描述】:
在解决这个问题时遇到了一些麻烦。 我只是为自己制作一个工作表,以帮助计算我那天工作了多少小时。 我有两个选择器,一个用于开始时间,一个用于结束时间。 两个选择器都将所选时间格式化为字符串。现在我只需要找到开始字符串和结束字符串之间经过的小时数。我不会为更改日期而工作,因此无需计算以前在这里让我感到困惑的日期/日期 -> Calculate date/time difference in java
这些是我的选择器监听器。
private TimePickerDialog.OnTimeSetListener startPickerListener = new TimePickerDialog.OnTimeSetListener() {
public void onTimeSet(TimePicker view, int selectedHour, int selectedMinute) {
startHour = selectedHour;
startMinute = selectedMinute;
startTime.setText(new StringBuilder().append(padding_str(startHour)).append(":").append(padding_str(startMinute)));
}
};
private TimePickerDialog.OnTimeSetListener finishPickerListener = new TimePickerDialog.OnTimeSetListener() {
public void onTimeSet(TimePicker view, int selectedHour, int selectedMinute) {
finishHour = selectedHour;
finishMinute = selectedMinute;
finishTime.setText(new StringBuilder().append(padding_str(finishHour)).append(":").append(padding_str(finishMinute)));
}
};
任何帮助将不胜感激!干杯! (如果您需要更多信息,请告诉我。)
【问题讨论】:
-
您问的是两个问题,而不是一个。 (a) 将字符串解析为时间值,(b) 计算经过的时间。两者都在 StackOverflow 上被多次询问和回答。
-
我知道他们之前被问过多次,但没有一个人有帮助。他们都是在A点到当前时间之间选择时间,而不是时间A和时间B,不管当前时间是什么。如果他们不这样做,他们会使用日期和时间,但我理所当然地不在乎日期是什么,因为我的老板会让我工作 24 小时以上,甚至这么晚/早。晚上/早上。我只是想制作一个基本的计算器。不多不少。
-
如果你想要没有日期的时间,我的回答能解决你的问题吗?我评论的重点是您应该能够自己构建答案。如果您执行诸如“joda date parse”和“joda calculate time”或“joda elapsed”之类的搜索,您会发现大量代码和示例。
-
我建议你应该关注日期。由于夏令时和其他异常情况,通常时间工作应与日期和时间一起考虑和跟踪。这对你来说可能听起来是多余的,但最终痛苦会教你不然。
-
就我个人而言,我认为我需要回到开始的基础......我不完全理解应该是“公共”、“私人”、“静态”等等......我不知道如何调用这些函数来完成 onClick 的工作。我阅读、关注并理解了 android.com 慷慨提供的“构建你的第一个应用程序”,但这并不能帮助我理解这些调用函数或它们被称为什么......关于在哪里寻找更多内容的任何想法深入了解这些或您可能知道有帮助的任何更好的教程?我为我缺乏知识而道歉。我确实想学习。
标签: android string time timepicker elapsedtime