I have a button named Check In
. My aim is on click to change the text and start counting the time. The timer has to stop at the next click. It should give the t
You can use System.currentTimeMillis()
(or create a new Date
or GregorianCalendar
instance) on click.
Save it somewhere. On next click do the same. Then compare the times.
I think it is better practice to use System.nanoTime() instead of System.currentTimeMillis(), as currentTimeMillis()
relies on what time the system's clock is set to, which can be changed.
nanoTime()
, however, is really designed to measure elapsed time according to the JavaDoc.
On the first click create a variable:
long startTime = System.currentTimeMillis();
Then on the second click you can calculate the difference:
long difference = System.currentTimeMillis() - startTime;
difference / 1000
will give you the difference in seconds. Hope this helps.