Хорошо, поэтому я создал функцию, чтобы показать количество дней до даты в будущем... Это правильно, пока количество дней не превышает 9 дней... если кажется, что оно показывает случайное количество дней. .. Пожалуйста, смотрите мой код ниже:
public String daysTillExpire() {
String daysLeft = "";
int position = 0 ;
String inputDateString = UIDM.get(position).date;
Calendar calCurr = Calendar.getInstance();
Calendar day = Calendar.getInstance();
try {
day.setTime(new SimpleDateFormat("dd-MM-yyyy").parse(inputDateString));
} catch (ParseException e) {
e.printStackTrace();
}
if (day.after(calCurr)) {
String noumberOfDays = "Days left: " + (day.get(Calendar.DAY_OF_MONTH) - (calCurr.get(Calendar.DAY_OF_MONTH)));
daysLeft = UIDM.get(position).date + "\n(" + noumberOfDays+")" ;
}
else if (day.before(calCurr)) {
daysLeft = "Key Expired";
return daysLeft; }
return daysLeft;
}
UIDM
— это модель данных, содержащая информацию... String inputDateString = UIDM.get(position).date;
возвращает значение 01-10-2018 23:59
.
SimpleDateFormat
и друзей и добавить ThreeTenABP на свой Android. проект, чтобы использоватьjava.time
, современный API даты и времени Java. С ним намного приятнее работать. - person Ole V.V.   schedule 12.09.2018java.util.Date
,java.util.Calendar
иjava.text.SimpleDateFormat
, теперь унаследованы, вытеснены java.time классы. Большая часть функций java.time обратно перенесена на Java 6 и Java 7 в ThreeTen-Backport. Дальнейшая адаптация для более ранней версии Android в ThreeTenABP проект. См. Как использовать ThreeTenABP…. - person Basil Bourque   schedule 13.09.2018