AlertDialog 에서 Back 버튼 막아버리기!!
개발/안드로이드 2017. 7. 18. 13:19반응형
개발하면서 Dialog 팝업창을 종종 쓰게 됩니다.
그런데 AlertDialog 를 띄운 상태에서 Back 키를 누르게 되면 의도하지 않게 팝업창이 닫히게 됩니다.
팝업창이 닫히지 않게 하려면 어떻게 해야 될까요?
이럴 때는 setCancelable 함수를 사용하면 해결이 됩니다.
아래 코드를 보시면 쉽게 이해하실 수 있습니다.
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("대화상자 테스트")
.setMessage("깜짝놀라셨습니까?")
.setCancelable(false)
.setPositiveButton("예", new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog, int whichButton){
finish(); // 깜짝 놀라 자지러지며 종료된다.
}
})
.setNegativeButton("취소", new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog, int whichButton){
dialog.cancel(); // 아무일도 없었던 척하면 닫는다.
}
});
AlertDialog dialog = builder.create();
dialog.show();
어떤가요?
참고로 팝업창을 수동으로 닫아줄려면 dismiss 메소드를 호출하면 됩니다.
dialog.dismiss();
반응형
'개발 > 안드로이드' 카테고리의 다른 글
Dialog 팝업창 종류 및 커스텀 Dialog 팝업창 (0) | 2017.09.05 |
---|---|
앱내 Webview에서 HTTPS 처리 이슈 (0) | 2017.08.09 |
안드로이드 String 메모리 보안이슈 해결하기 (메모리 취약점) #1 (0) | 2017.08.06 |
안드로이드 6.0 (Marshmallow) 권한 획득하기! (1) | 2017.08.04 |
모바일웹 - 앱내 webview를 이용하여 확대/축소 하기 (0) | 2017.08.02 |
HTTP download (http 파일 다운로드 하기) (0) | 2017.07.27 |
안드로이드 확장자별 파일 열기 (0) | 2017.07.26 |
안드로이드 EditText 입력시 글자 체크 (이벤트) (0) | 2017.07.17 |