【发布时间】:2019-03-05 07:30:36
【问题描述】:
我正在使用两个不同的日期选择器来选择开始日期和结束日期。对于我选择的年月日,我想获取那天开始的时刻。例如 2018 年 9 月 18 日、2018 年 9 月 18 日和小时 00.00 .如果可能,我想禁用 GMT 差异。通过datepicker,我分享了我选择的日期的日志。
D/START DATE: Sun Sep 23 18:23:51 GMT+03:00 2018
D/END DATE: Sun Sep 30 18:23:51 GMT+03:00 2018
我想要的日志如下:
D/START DATE: Sun Sep 23 00:00:00 2018
D/END DATE: Sun Sep 30 23:59:59 2018
这意味着开始日期内的任何时间都必须有效,并且在结束日期结束之前的任何时间都必须是结束日期。我该如何做到这一点?
【问题讨论】:
-
考虑 java.time,现代 Java 日期和时间 API。通常使用起来会更好,尤其是更适合像您这样的过滤任务。如果您正在为更少的新 Android 编写代码,请将 ThreeTenABP 库添加到您的项目中以使用 java.time,请参阅How to use ThreeTenABP in Android Project。
-
使用半开间隔:当用户选择 9 月 23 日和 30 日时,包括 9 月 23 日或之后的 00:00 以及严格在 10 月 1 日 00:00 之前的时间乙>。请务必保留 GMT 偏移量,否则您将无法判断时间是在这些限制之前还是之后。
标签: android datepicker gmt