Android
안드로이드 뒤로가기 버튼 이벤트 종료 안되게하기
meong_j
2022. 1. 16. 19:43
728x90
반응형
안드로이드 앱 실행 중 뒤로가기 버튼을 누르면 종료되는 경우가 있다. 이 때 두 번 클릭 할 경우에만 앱이 종료되게 변경해보자.
package com.meongj.backbutton_ex
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.os.Handler
import android.util.Log
import android.widget.Toast
import androidx.core.os.HandlerCompat.postDelayed
class MainActivity : AppCompatActivity() {
private var isDouble = false
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
// 뒤로가기 버튼 종료안되게
override fun onBackPressed() {
Log.d("MainActivity", "backbutton")
if(isDouble == true){
finish() // 종료
}
isDouble = true
Toast.makeText(this,"종료하려면 더블클릭", Toast.LENGTH_LONG).show()
// 2초후 false로 초기화
Handler().postDelayed({
isDouble = false
},2000)
}
}
```
- 한 번 뒤로 가기 버튼 누를 경우 “종료하려면 더블클릭” toast 생성
- 2초 후 false로 isDouble 값 초기화
- 더블클릭하면 isDouble = true로 변경후 finish() 앱종료
반응형