我正在使用此代码在我的应用程序中获取相对时间:
DateUtils.getRelativeTimeSpanString(
mReferenceTime,
now,
DateUtils.MINUTE_IN_MILLIS,
DateUtils.FORMAT_ABBREV_RELATIVE
);
它正在正确返回所有内容,但我想缩短月份。例如,代替“December 21”,它应该返回“Dec 21”。我怎样才能做到这一点?
我正在使用此代码在我的应用程序中获取相对时间:
DateUtils.getRelativeTimeSpanString(
mReferenceTime,
now,
DateUtils.MINUTE_IN_MILLIS,
DateUtils.FORMAT_ABBREV_RELATIVE
);
它正在正确返回所有内容,但我想缩短月份。例如,代替“December 21”,它应该返回“Dec 21”。我怎样才能做到这一点?
检查标志DateUtils.FORMAT_ABBREV_MONTH
。来自 Android源代码(第 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
将解决您的问题。