Я пытаюсь отформатировать временные метки в частично относительном формате: сегодня, завтра или день недели для дня;время всегда в абсолютных чч: мм.Пример:
- Понедельник 11: 00
- Завтра 10: 30
Отметки времени всегда в будущем и всегда меньше недели с сегодняшнего дня.
Я пробовал следующее:
DateUtils.getRelativeDateTimeString(context, date.getTime(),
DateUtils.MINUTE_IN_MILLIS,
DateUtils.WEEK_IN_MILLIS,
DateUtils.FORMAT_SHOW_TIME | DateUtils.FORMAT_SHOW_WEEKDAY | DateUtils.FORMAT_NO_MONTH_DAY);
Однако это вызывает у меня странные вещи, такие как «через 19 часов, 12:00» или «через 3 дня, 11:00».
Я попытался изменить transitionResolution
(4-й) аргумент.Тем не менее, ни DateUtils.DAY_IN_MILLIS
, ни DateUtils.SECOND_IN_MILLIS
, ни простой 0
ничего не изменили, по крайней мере, на момент времени после полуночи, но менее чем на 24 часа в будущем.
Я бы предпочел избегатьсторонние библиотеки, и я также предпочел бы не свернуть свои собственные (поскольку это почти гарантированно завершится сбоем по крайней мере для одного углового случая, который я не рассматривал).
Есть ли способ получить метки времени, отформатированные, как описано выше?