java.lang.Object | |
↳ | android.text.format.DateUtils |
This class contains various date-related utilities for creating text for things like elapsed time and date ranges, strings for days of the week and months, and AM/PM text etc.
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Formats a date or a time range according to the local conventions.
| |||||||||||
Formats a date or a time according to the local conventions.
| |||||||||||
Formats an elapsed time in the form "MM:SS" or "H:MM:SS"
for display on the call-in-progress screen.
| |||||||||||
Formats an elapsed time in the form "MM:SS" or "H:MM:SS"
for display on the call-in-progress screen.
| |||||||||||
Format a date / time such that if the then is on the same day as now, it shows
just the time and if it's a different day, it shows just the date.
| |||||||||||
Return a localized string for AM or PM.
| |||||||||||
Return a string for the day of the week.
| |||||||||||
Return a localized string for the day of the week.
| |||||||||||
Return string describing the elapsed time since startTime formatted like
"[relative time/date], [time]".
| |||||||||||
Returns a string describing 'time' as a time relative to 'now'.
| |||||||||||
Convenience function to return relative time string without preposition.
| |||||||||||
Returns a string describing 'time' as a time relative to 'now'.
| |||||||||||
Returns a string describing the elapsed time since startTime.
| |||||||||||
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class java.lang.Object
|
Request the full spelled-out name. For use with the 'abbrev' parameter of getDayOfWeekString(int, int) and getMonthString(int, int).
Request an abbreviated version of the name. For use with the 'abbrev' parameter of getDayOfWeekString(int, int) and getMonthString(int, int).
Request a shorter abbreviated version of the name. For use with the 'abbrev' parameter of getDayOfWeekString(int, int) and getMonthString(int, int).
Request an even shorter abbreviated version of the name. For use with the 'abbrev' parameter of getDayOfWeekString(int, int) and getMonthString(int, int).
Request an even shorter abbreviated version of the name. For use with the 'abbrev' parameter of getDayOfWeekString(int, int) and getMonthString(int, int).
Formats a date or a time range according to the local conventions.
Example output strings (date formats in these examples are shown using the US date format convention but that may change depending on the local settings):
The flags argument is a bitmask of options from the following list:
If FORMAT_SHOW_TIME is set, the time is shown as part of the date range. If the start and end time are the same, then just the start time is shown.
If FORMAT_SHOW_WEEKDAY is set, then the weekday is shown.
If FORMAT_SHOW_YEAR is set, then the year is always shown. If FORMAT_NO_YEAR is set, then the year is not shown. If neither FORMAT_SHOW_YEAR nor FORMAT_NO_YEAR are set, then the year is shown only if it is different from the current year, or if the start and end dates fall on different years. If both are set, FORMAT_SHOW_YEAR takes precedence.
Normally the date is shown unless the start and end day are the same. If FORMAT_SHOW_DATE is set, then the date is always shown, even for same day ranges.
If FORMAT_NO_MONTH_DAY is set, then if the date is shown, just the month name will be shown, not the day of the month. For example, "January, 2008" instead of "January 6 - 12, 2008".
If FORMAT_CAP_AMPM is set and 12-hour time is used, then the "AM" and "PM" are capitalized.
If FORMAT_NO_NOON is set and 12-hour time is used, then "12pm" is shown instead of "noon".
If FORMAT_CAP_NOON is set and 12-hour time is used, then "Noon" is shown instead of "noon".
If FORMAT_NO_MIDNIGHT is set and 12-hour time is used, then "12am" is shown instead of "midnight".
If FORMAT_CAP_NOON is set and 12-hour time is used, then "Midnight" is shown instead of "midnight".
If FORMAT_12HOUR is set and the time is shown, then the time is shown in the 12-hour time format. You should not normally set this. Instead, let the time format be chosen automatically according to the system settings. If both FORMAT_12HOUR and FORMAT_24HOUR are set, then FORMAT_24HOUR takes precedence.
If FORMAT_24HOUR is set and the time is shown, then the time is shown in the 24-hour time format. You should not normally set this. Instead, let the time format be chosen automatically according to the system settings. If both FORMAT_12HOUR and FORMAT_24HOUR are set, then FORMAT_24HOUR takes precedence.
If FORMAT_UTC is set, then the UTC timezone is used for the start and end milliseconds.
If FORMAT_ABBREV_TIME is set and 12-hour time format is used, then the start and end times (if shown) are abbreviated by not showing the minutes if they are zero. For example, instead of "3:00pm" the time would be abbreviated to "3pm".
If FORMAT_ABBREV_WEEKDAY is set, then the weekday (if shown) is abbreviated to a 3-letter string.
If FORMAT_ABBREV_MONTH is set, then the month (if shown) is abbreviated to a 3-letter string.
If FORMAT_ABBREV_ALL is set, then the weekday and the month (if shown) are abbreviated to 3-letter strings.
If FORMAT_NUMERIC_DATE is set, then the date is shown in numeric format instead of using the name of the month. For example, "12/31/2008" instead of "December 31, 2008".
context | the context is required only if the time is shown |
---|---|
startMillis | the start time in UTC milliseconds |
endMillis | the end time in UTC milliseconds |
flags | a bit mask of options |
Formats a date or a time according to the local conventions. There are lots of options that allow the caller to control, for example, if the time is shown, if the day of the week is shown, if the month name is abbreviated, if noon is shown instead of 12pm, and so on. For the complete list of options, see the documentation for formatDateRange(Context, long, long, int).
Example output strings (date formats in these examples are shown using the US date format convention but that may change depending on the local settings):
context | the context is required only if the time is shown |
---|---|
millis | a point in time in UTC milliseconds |
flags | a bit mask of formatting options |
Formats an elapsed time in the form "MM:SS" or "H:MM:SS" for display on the call-in-progress screen.
elapsedSeconds | the elapsed time in seconds. |
---|
Formats an elapsed time in the form "MM:SS" or "H:MM:SS" for display on the call-in-progress screen.
recycle | StringBuilder to recycle, if possible |
---|---|
elapsedSeconds | the elapsed time in seconds. |
Format a date / time such that if the then is on the same day as now, it shows just the time and if it's a different day, it shows just the date.
The parameters dateFormat and timeFormat should each be one of DEFAULT, FULL, LONG, MEDIUM or SHORT
then | the date to format |
---|---|
now | the base time |
dateStyle | how to format the date portion. |
timeStyle | how to format the time portion. |
Return a localized string for AM or PM.
ampm | Either Calendar.AM or Calendar.PM. |
---|
IndexOutOfBoundsException | if the ampm is out of bounds. |
---|
Return a string for the day of the week.
dayOfWeek | One of Calendar.SUNDAY, Calendar.MONDAY, etc. |
---|---|
abbrev | One of LENGTH_LONG, LENGTH_SHORT, LENGTH_SHORTER or LENGTH_SHORTEST. For forward compatibility, anything else will return the same as {#LENGTH_MEDIUM}. |
IndexOutOfBoundsException | if the dayOfWeek is out of bounds. |
---|
Return a localized string for the day of the week.
month | One of Calendar.JANUARY, Calendar.FEBRUARY, etc. |
---|---|
abbrev | One of LENGTH_LONG, LENGTH_SHORT, LENGTH_SHORTER or LENGTH_SHORTEST. For forward compatibility, anything else will return the same as {#LENGTH_MEDIUM}. |
Return string describing the elapsed time since startTime formatted like "[relative time/date], [time]".
Example output strings for the US date format.
time | some time in the past. |
---|---|
minResolution | the minimum elapsed time (in milliseconds) to report when showing relative times. For example, a time 3 seconds in the past will be reported as "0 minutes ago" if this is set to MINUTE_IN_MILLIS. |
transitionResolution | the elapsed time (in milliseconds) at which to stop reporting relative measurements. Elapsed times greater than this resolution will default to normal date formatting. For example, will transition from "6 days ago" to "Dec 12" when using WEEK_IN_MILLIS. |
Returns a string describing 'time' as a time relative to 'now'.
Time spans in the past are formatted like "42 minutes ago". Time spans in the future are formatted like "in 42 minutes".
Can use FORMAT_ABBREV_RELATIVE flag to use abbreviated relative times, like "42 mins ago".
time | the time to describe, in milliseconds |
---|---|
now | the current time in milliseconds |
minResolution | the minimum timespan to report. For example, a time 3 seconds in the past will be reported as "0 minutes ago" if this is set to MINUTE_IN_MILLIS. Pass one of 0, MINUTE_IN_MILLIS, HOUR_IN_MILLIS, DAY_IN_MILLIS, WEEK_IN_MILLIS |
flags | a bit mask of formatting options, such as FORMAT_NUMERIC_DATE or FORMAT_ABBREV_RELATIVE |
Convenience function to return relative time string without preposition.
c | context for resources |
---|---|
millis | time in milliseconds |
Returns a string describing 'time' as a time relative to 'now'.
Time spans in the past are formatted like "42 minutes ago". Time spans in the future are formatted like "in 42 minutes".
time | the time to describe, in milliseconds |
---|---|
now | the current time in milliseconds |
minResolution | the minimum timespan to report. For example, a time 3 seconds in the past will be reported as "0 minutes ago" if this is set to MINUTE_IN_MILLIS. Pass one of 0, MINUTE_IN_MILLIS, HOUR_IN_MILLIS, DAY_IN_MILLIS, WEEK_IN_MILLIS |
Returns a string describing the elapsed time since startTime.
startTime | some time in the past. |
---|
withPreposition | If true, the string returned will include the correct preposition ("at 9:20am", "on 10/12/2008" or "on May 29"). |
---|