У меня есть кнопка с именем Check In
. Моя цель - щелкнуть, чтобы изменить текст и начать подсчет времени. Таймер должен остановиться при следующем нажатии. Он должен дать время между двумя нажатиями кнопок.
Android - для измерения времени между двумя нажатиями кнопок
Ответ 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
) при щелчке.
Сохраните его где-нибудь. При следующем нажатии сделайте то же самое. Затем сравните время.