Для получения разницы в датах (здесь date2
может быть выбранной пользователем датой, а date1
может быть текущей датой-временем (которую можно получить, позвонив по номеру: new Date()
)):
public static String getDifferenceBetweenDates(Date date1, Date date2) {
long secondsInMilli = 1000;
long minutesInMilli = secondsInMilli * 60;
long hoursInMilli = minutesInMilli * 60;
long daysInMilli = hoursInMilli * 24;
long difference = date2.getTime() - date1.getTime();
long elapsedDays = difference / daysInMilli;
difference = difference % daysInMilli;
long elapsedHours = difference / hoursInMilli;
difference = difference % hoursInMilli;
long elapsedMinutes = difference / minutesInMilli;
difference = difference % minutesInMilli;
long elapsedSeconds = difference / secondsInMilli;
return String.format("%s days %s hours %s minutes %s seconds", elapsedDays, elapsedHours, elapsedMinutes, elapsedSeconds);
}
Теперь, когда вы получите разницу, вы можете использовать this в качестве таймера обратного отсчета и определить onTick () , чтобы обновлять ваше представление через каждый mCountUpInterval
интервал времени (определенный вкласс CountUpTimer)