首页 > 解决方案 > 如何使用 DateUtils 显示未来日期

问题描述

我正在创建应用程序。这是一个新闻列表,我需要在每条新闻上显示日期,例如 9 小时前或 1 个月前等等。我也有未来的消息,所以我还需要在 1 个月后展示。所以我正在使用DateUtils.getRelativeTimeSpanString()这个目的。但我只能显示过去的日期,例如 9 小时前或 1 个月前,我不能显示未来的日期。它显示了未来的日期,例如 2020 年 6 月 26 日。那么有没有办法在使用 2 个月后显示它DateUtils

DateUtils.getRelativeTimeSpanString(
            millis,
            System.currentTimeMillis(),
            DateUtils.MINUTE_IN_MILLIS).toString();

标签: javaandroiddateandroid-dateutilsapache-commons-dateutils

解决方案


你可以用同样的方式,但未来的时间跨度格式为“42 分钟内”

DateUtils.getRelativeTimeSpanString(
            futureTimeInMillis,
            System.currentTimeMillis(),
            DateUtils.MINUTE_IN_MILLIS).toString();

您可以在最后一个参数中传递 0、MINUTE_IN_MILLIS、HOUR_IN_MILLIS、DAY_IN_MILLIS、WEEK_IN_MILLIS 之一。最后一个参数是您想要的格式的最小分辨率。

MINUTE_IN_MILLIS -In 42 minutes

HOUR_IN_MILLIS -In 2 hours

DAY_IN_MILLIS -In 2 days


推荐阅读