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() 앱종료
반응형
'Android' 카테고리의 다른 글
[Android] ConstraintLayout (0) | 2021.12.27 |
---|---|
[Android] TableLayout (0) | 2021.12.21 |
[Android] FrameLayout (0) | 2021.12.06 |
[Android] LinearLayout (0) | 2021.12.05 |
[Android] View 의 기본 개념 (0) | 2021.12.05 |