반응형
안드로이드 개발을 하다보면 보통 뒤로가기를 잘못눌러 어플이 종료되곤합니다. 때문에 두번 이상 누른 경우에 어플이 종료되길 바라는 경우가 많은데 이 경우 다음과 같이 MainActivity에 적용해주면 좋습니다.
public class MainActivity extends ActivityCompact {
...
//webView 뒤로 가기 처리
private long time = 0;
private Toast toast;
...
@Override
public void onBackPressed() {
if(System.currentTimeMillis()-time >= 2000){
// CASE 이전에 뒤로가기 키를 누른 시간이 2초 이상인 경우 (뒤로가기를 두번 누르지 않은걸로 판단)
// Step01. 현재 누른 시간을 time에 담아줍니다. (뒤로가기를 두번 누른 간격 체크를 위해)
time = System.currentTimeMillis();
// Step02. 한 번 더 눌러야 종료가 됨을 Toast로 알려줍니다.
toast = Toast.makeText(getApplicationContext(),"뒤로 버튼을 한번 더 누르면 종료합니다.",Toast.LENGTH_SHORT);
toast.show();
}else{
// CASE 뒤로가기 키를 2초 이내에 두번 누른 경우
// Step01. 이전에 Toast메시지를 지워줍니다(지우지 않으면 어플이 종료되도 일정시간 이후에 사라지기 때문)
toast.cancel();
// Step02. 어플을 종료해줍니다.
finish();
}
}
반응형
'개발 창고 > Android' 카테고리의 다른 글
[Android] Webview 콘솔정보를 LogCat에 띄우기 (1) | 2020.09.03 |
---|---|
[Android] Webview에서 경고창(Alert/Confirm) 커스터마이즈하기 (0) | 2020.09.03 |
[Android] WebView에서 Url 캐치하기 (0) | 2020.09.01 |
[Android] WebView에 Header추가하기 (0) | 2020.08.20 |
[Android] 기기별 고유식별을 위한 UUID (0) | 2020.08.19 |