我正在使用此代码在我的应用程序中获取相对时间:

DateUtils.getRelativeTimeSpanString(
        mReferenceTime,
        now,
        DateUtils.MINUTE_IN_MILLIS,
        DateUtils.FORMAT_ABBREV_RELATIVE
);

它正确返回了所有内容,但我想缩短月份。例如,代替“December 21”,它应该返回“Dec 21”。我怎样才能做到这一点?

最佳答案

查看标志 DateUtils.FORMAT_ABBREV_MONTH 。从 Android source code (lines 781-782) :

“如果设置了 FORMAT_ABBREV_MONTH,则月份(如果显示)将缩写为 3 个字母的字符串。”

查看 getRelativeTimeSpanString 的三参数版本:

public static CharSequence getRelativeTimeSpanString(long time, long now, long minResolution) {
    int flags = FORMAT_SHOW_DATE | FORMAT_SHOW_YEAR | FORMAT_ABBREV_MONTH;
    return getRelativeTimeSpanString(time, now, minResolution, flags);
}

由此看来,将 DateUtils.FORMAT_ABBREV_RELATIVE | DateUtils.FORMAT_ABBREV_MONTH 作为第四个参数传递给 getRelativeTimeSpanString 似乎可以解决您的问题。

关于android - 如何获得一个由三个字母组成的月份的相对时间字符串?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27663319/

10-12 03:24