@@ -130,12 +130,13 @@ internal class RunningActivity :
130
130
private fun observeState () {
131
131
repeatWhenUiStarted {
132
132
viewModel.runningState.collect { runningState ->
133
- with (runningState.runningData) {
134
- binding.tvStartTime.text = Date (startTime).dateToString(" hh:mm" )
135
- binding.tvRunningTime.text =
136
- String .format(" %d:%02d" , runningTime / 60 , runningTime % 60 )
137
- binding.tvTotalDistance.text = String .format(" %.4f m" , totalDistance)
138
- binding.tvPace.text = String .format(" %.4f km/h" , pace * 3.6 )
133
+ when (runningState) {
134
+ is RunningState .NotRunning -> {
135
+ }
136
+ is RunningState .Running ,
137
+ is RunningState .Paused -> {
138
+ handleUpdateState(runningState.runningData)
139
+ }
139
140
}
140
141
}
141
142
}
@@ -209,6 +210,16 @@ internal class RunningActivity :
209
210
}
210
211
}
211
212
213
+ private fun handleUpdateState (runningData : RunningData ) {
214
+ with (runningData) {
215
+ binding.tvStartTime.text = Date (startTime).dateToString(" hh:mm" )
216
+ binding.tvRunningTime.text =
217
+ String .format(" %d:%02d" , runningTime / 60 , runningTime % 60 )
218
+ binding.tvTotalDistance.text = String .format(" %.4f m" , totalDistance)
219
+ binding.tvPace.text = String .format(" %.4f km/h" , pace * 3.6 )
220
+ }
221
+ }
222
+
212
223
private fun handleRunningFinishSuccessState (runningFinishData : RunningFinishData ) {
213
224
setResult(
214
225
RESULT_OK ,
0 commit comments