반응형
스톱워치 예제
https://github.com/jininim/KotlinCh8
package com.example.kotlin_0704
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.os.SystemClock
import android.widget.Button
import android.widget.Chronometer
import com.example.kotlin_0704.databinding.ActivityMainBinding
class MainActivity : AppCompatActivity() {
// 멈춘 시각 저장
var pauseTime = 0L
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val binding = ActivityMainBinding.inflate(layoutInflater)
setContentView(binding.root)
val btn_start : Button = binding.btnStart
val btn_pause : Button = binding.btnStop
val btn_reset : Button = binding.btnReset
val chronometer : Chronometer = binding.chronometer
btn_start.setOnClickListener { //start 버튼 클릭시
chronometer.base = SystemClock.elapsedRealtime() + pauseTime
chronometer.start() //chronometer 시작
btn_pause.isEnabled = true
btn_reset.isEnabled = true
btn_start.isEnabled = false
}
btn_pause.setOnClickListener { //stop 버튼 클릭시
pauseTime = chronometer.base - SystemClock.elapsedRealtime()
chronometer.stop() //chronometer 중지
btn_pause.isEnabled = false
btn_reset.isEnabled = true
btn_start.isEnabled = true
}
btn_reset.setOnClickListener { //reset 버튼 클릭시
pauseTime = 0L
chronometer.base = SystemClock.elapsedRealtime()
chronometer.stop()
btn_pause.isEnabled = false
btn_reset.isEnabled = false
btn_start.isEnabled = true
}
}
}
반응형
'앱 개발일지' 카테고리의 다른 글
[Android/Kotlin] 액션바 (0) | 2022.07.10 |
---|---|
[Android Studio / Kotlin]리소스 활용 (0) | 2022.07.05 |
[Android]Kotlin - 클래스 (0) | 2022.07.04 |
[Android Studio]Kotlin - 자료형 (0) | 2022.07.04 |
[Android]안드로이드 컴포넌트-Do it 안드로이드 with 코틀린 (0) | 2022.07.04 |
댓글