황소개발자
[안드로이드 스튜디오][코틀린] 뒤로가기 두번해야 종료 구현하기 [kotlin] + system currentTimeMillis() 설명. @@황소처럼 우직하게@@ 본문
앱개발
[안드로이드 스튜디오][코틀린] 뒤로가기 두번해야 종료 구현하기 [kotlin] + system currentTimeMillis() 설명. @@황소처럼 우직하게@@
hjp845 2020. 2. 21. 23:29반응형
우선 아래 사이트를 참조하였슴을 밝힙니다.
시작합니다
[Android : Kotlin] 뒤로가기 두번으로 앱 종료하기 with SnackBar
뒤로가기에 대한 처리를 해주지 않으면 기본으로 구성되어있는 onBackPressed() 메서드가 호출되며 열려있는 액티비티를 finish()시키게 되어있어서 뒤로가기 버튼을 한번만 누르면 앱이 종료되어 버린다. 뒤로가..
bongcando.tistory.com
var time3: Long = 0
override fun onBackPressed() {
val time1 = System.currentTimeMillis()
val time2 = time1 - time3
if (time2 in 0..2000) {
finish()
}
else {
time3 = time1
Toast.makeText(applicationContext, "한번 더 누르시면 종료됩니다.",Toast.LENGTH_SHORT).show()
}
}
코드는 위와 같습니다.
onBackPressed() 함수를 오버라이딩하여 구현합니다.
자 뒤로가기 한 번 누르면, time1 은 큰 값이고 time2 에 그대로 들어가겠죠.
(System.currentTimeMillis() 는 1970년 1월1일부터 ms 초 단위로 계산된 수를 반환합니다)
큰값이 들어오니 else 문이 실행되고
time3 에 그 큰값이 들어오고, 경고창을 띄워줍니다.
이 때, 뒤로가기를 2초안에 누른다면
time1 - time3 은 2000보다 작은값을 갖게되죠. 그리고 종료됩니다.
반응형
'앱개발' 카테고리의 다른 글
[안드로이드 스튜디오] 애드 몹, 앱 광고단위 많을수록 좋을까? 아니면 그냥 하나쓸까? @@황소처럼 우직하게@@ (0) | 2020.02.22 |
---|---|
[안드로이드][코틀린] 뒤로가기 눌렀을 때, 홈화면으로 가도록 @@황소처럼 우직하게@@ kotlin (0) | 2020.02.21 |
[안드로이드 스튜디오][코틀린] 화면 전환, 화면 추가 : manifests 도수정해주셔야됩니다~~^^[android][kotlin] (0) | 2020.02.21 |
[안드로이드 스튜디오][코틀린] 특정 사이트 링크로 이동하기 [android][kotlin] (0) | 2020.02.21 |
[안드로이드][코틀린] 버튼 눌렀을 때 전화 걸기 : 다이얼 android kotlin call (0) | 2020.02.21 |
Comments