在getRelativeDateTimeString调用中隐藏时间详细信息



我正在我的Android应用程序中进行以下调用:

DateUtils.getRelativeDateTimeString(
context,
myTime,
DateUtils.MINUTE_IN_MILLIS,
DateUtils.WEEK_IN_MILLIS,
0)

这会返回类似的字符串

  • 3小时前,下午5:58
  • 昨天下午2:23
  • 2天前,上午9:02

我只想展示它的第一部分,时间并不有趣,尤其是对于过去2天甚至几周的时间来说。

此函数的最后一个参数是flags参数。还有标志FORMAT_SHOW_TIME,但这个标志似乎总是启用的,而禁用是不可能的,或者我遗漏了什么?

除了用','分割字符串之外,我还有什么选择,这肯定会在某些地区引发其他问题

您可以改用getRelativeTimeSpanString。它在没有绝对时间的情况下打印。不过,它不支持transitionResolution功能。

DateUtils.getRelativeTimeSpanString(
myTime,
now,
DateUtils.MINUTE_IN_MILLIS,
)

以下是DateUtils.getRelativeDateTimeString使用的RelativeDateTimeFormatter.getRelativeDateTimeString的javadoc注释

函数类似于getRelativeTimeSpanString,但它总是将绝对时间附加到相对时间字符串中,以返回'[relative time/date子句],[absolute time子句]

相关文章:使用Android DateUtils API 将相对日期格式化为Android中的人类可读格式

相关内容

最新更新