Android - для измерения времени между двумя нажатиями кнопок

У меня есть кнопка с именем Check In. Моя цель - щелкнуть, чтобы изменить текст и начать подсчет времени. Таймер должен остановиться при следующем нажатии. Он должен дать время между двумя нажатиями кнопок.

Ответ 1

При первом нажатии создайте переменную:

long startTime = System.currentTimeMillis();

Затем на втором клике вы можете рассчитать разницу:

long difference = System.currentTimeMillis() - startTime;

difference / 1000 даст вам разницу в секундах. Надеюсь, это поможет.

Ответ 2

Я думаю, что лучше использовать System.nanoTime() вместо System.currentTimeMillis(), поскольку currentTimeMillis() полагается на то, в какое время установлены системные часы, которые можно изменить.

nanoTime(), однако, действительно предназначен для измерения прошедшего времени в соответствии с JavaDoc.

Ответ 3

Вы можете использовать System.currentTimeMillis() (или создать новый экземпляр Date или GregorianCalendar) при щелчке.

Сохраните его где-нибудь. При следующем нажатии сделайте то же самое. Затем сравните время.