• Stars
    star
    191
  • Rank 202,877 (Top 4 %)
  • Language
    Java
  • License
    Apache License 2.0
  • Created almost 9 years ago
  • Updated about 8 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

NaturalDateFormat

A library to format dates as described in Material Design guidelines (https://www.google.com/design/spec/patterns/data-formats.html#data-formats-date-time).

RelativeDateFormat formats date as relative (4 months ago, today, next year), AbsoluteDateFormat formats date as absolute (Monday, 4:32 PM, June 10). These classes use natural language, can use abbreviations, 12/24 hours clock, skip time/year/weekday if not needed.

This library internally uses Joda Time. If you're looking for something really compact, you may prefer to use DateUtils.

Screenshot

How to install

Follow instructions on https://jitpack.io/#ZieIony/NaturalDateFormat

How to use
RelativeDateFormat relFormat = new RelativeDateFormat(context,NaturalDateFormat.DATE);
AbsoluteDateFormat absFormat = new AbsoluteDateFormat(context,NaturalDateFormat.DATE | NaturalDateFormat.HOURS | NaturalDateFormat.MINUTES);
relFormat.format(new Date().getTime());
absFormat.format(new Date().getTime());

The second parameter can be a combination of flags from NaturalDateFormat class. See the sample app.

Translations

I know only english and polish. If you wish to help me with translations, feel free to make a pull request with a translation.

There are issues with certain languages on certain platforms. For example polish doesn't work well on Samsung with API 10. It's an issue with Android internals and there's not much I can do with that.