Android Studio/java
36. [안드로이드/java] 뒤로가기 두번 클릭시 종료하기(Toast)
drizzle0925
2021. 10. 28. 16:33
728x90
네이버 앱이나 다른 앱에서 많이 사용하고 있는 기법입니다.
1. 뒤로 가기 버튼 클릭
1) 이전 페이지가 있음 : 뒤로 돌아감
2) 이전 페이지가 없음 : Toast창을 띄움 > 뒤로 가기 버튼 클릭 > 앱 종료
예제
MainActivity에 아래 코드를 입력합니다.
private long backKeyPressedTime = 0;
...
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public void onBackPressed() {
//super.onBackPressed();
if(mWebView.canGoBack()) {
mWebView.goBack();
}else{
if(System.currentTimeMillis()-backKeyPressedTime>=2000){
backKeyPressedTime=System.currentTimeMillis();
Toast.makeText(getApplicationContext(),"'뒤로'버튼 한번 더 누르시면 종료됩니다.",Toast.LENGTH_SHORT).show();
}else if(System.currentTimeMillis()-backKeyPressedTime<2000){
finish();
return;
}
}
}
결과물
이전 페이지로 이동하지 않고 뒤로 가기 버튼을 2번 클릭하면 앱 종료
private long backpressedTime = 0;
@Override
public void onBackPressed() {
if (System.currentTimeMillis() > backpressedTime + 2000) {
backpressedTime = System.currentTimeMillis();
Toast.makeText(this, "'뒤로'버튼 한번 더 누르시면 종료됩니다.", Toast.LENGTH_SHORT).show();
} else if (System.currentTimeMillis() <= backpressedTime + 2000) {
finish();
}
}
728x90