Счетчик дней В Андроид

Вопрос:

Как сделать чтобы пользователь установил текущую или какую нибудь дату, и считать сколько дней прошло с указанной даты?

Буду рад примерам или советам в какую сторону копать!


Ответы (1 шт):

Автор решения: Andrew

Вот ваша активность:

public class MainActivity extends AppCompatActivity {
    .....


}

добавляем переменную, которая отображает выбранную дату:

 Calendar dateAndTime=Calendar.getInstance();

на какое-то действие выводим диалог выбора даты:

new DatePickerDialog(MainActivity.this, d,
                dateAndTime.get(Calendar.YEAR),
                dateAndTime.get(Calendar.MONTH),
                dateAndTime.get(Calendar.DAY_OF_MONTH))
                .show();

дальше добавляем обработчик выбора даты:

DatePickerDialog.OnDateSetListener d=new DatePickerDialog.OnDateSetListener() {
        public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
            dateAndTime.set(Calendar.YEAR, year);
            dateAndTime.set(Calendar.MONTH, monthOfYear);
            dateAndTime.set(Calendar.DAY_OF_MONTH, dayOfMonth);
            
        }
    };

дальше получаем разницу в днях между двумя датами Calendar.getInstance() и dateAndTime:

long diff = dateAndTime.getTimeInMillis() - Calendar.getInstance().getTimeInMillis();

float dayCount = (float) diff / (24 * 60 * 60 * 1000);

Вот тут можно почитать про получение разницы во времени а тут есть туториал по работе с селекторами даты и времени

→ Ссылка