3

我被困在这个任务上。我想在当前时间上添加不同的小时或分钟。因此,用户按下一个按钮,onClick将拉出当前时间,然后添加我决定的小时数和分钟数。目前我有它增加了两个小时,但我希望能够在 and 周围2 hours加减14 minutes

这是我到目前为止所拥有的:

public void onClickHere (View v) {

    LocalTime localtime = new LocalTime();
    LocalTime dt = new LocalTime(localtime.getHourOfDay(), localtime.getMinuteOfHour());
    LocalTime twoHoursLater = dt.plusHours(2);

    Text1.setText("Time: " + twoHoursLater);

}

现在上面的代码做了我想要的一部分。它获取本地时间并增加两个小时。但是它显示了很多额外的数字。秒和毫秒。

有没有办法让我只显示小时和分钟?

通过调用getHourOfDay()getMinuteOfHour()它只显示小时和分钟,但它仍然显示00.000秒和分钟。

因此,如果我现在按下按钮,它将显示10:58:00.000. 我希望它显示的是10:58.

最终能够增加分钟,但我认为这是另一个问题,一个更简单的问题,我可以简单地以已经知道如何增加两个小时为例。

希望我已经解释得足够好。

4

1 回答 1

3

您需要使用DateTimeFormatter,例如:

DateTimeFormatter formatter = DateTimeFormat.forPattern("HH:mm");
Text1.setText("Time: " + twoHoursLater.toString(formatter));

注意:DateTimeFormatter是线程安全的,因此您可以将其定义为private final static变量并重用它,而不是每次onClickHere调用时都创建一个实例。

于 2013-01-14T09:05:15.053 回答