I have a simple program with one TextView and two Buttons: Button1 and Button2.
Clicking on Button 1 will start a counter, increasing by 1 every 1 second and show res
As @hovanessyan suggested: You can use the Chronometer class. E.g., as follows (with Kotlin, Java analog):
class ChronometerToggler: Fragment() {
private lateinit var chronometer: Chronometer
private var isChronometerRunning = false
private lateinit var toggleButton: FloatingActionButton
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
val view = inflater.inflate(R.layout.my_layout, container, false)
chronometer = view.findViewById(R.id.chronometer)
toggleButton = view.findViewById(R.id.toggle_button)
toggleButton.setOnClickListener {
onToggleButtonPressed()
}
return view
}
private fun onToggleButtonPressed() {
isChronometerRunning = !isChronometerRunning
if (isChronometerRunning) {
chronometer.base = SystemClock.elapsedRealtime()
chronometer.start()
}
else {
chronometer.stop()
}
}
}
In the my_layout.xml:
[...]
[...]