안드로이드 개발 질문/답변
(글 수 45,052)
edit 창에서 입력이 잘못되었을 경우
아래와 같이 AlertDialog을 사용하여 경고 팝업을 띄우고 있습니다
근데 팝업이 떠있는 상태에서 확인 버튼을 눌렀을때랑 하드 취소키를 눌렀을때
다른 동작 및 변수 값을 셋팅할려고하는데요
확인 버튼 눌렀을때는 setPositiveButton에 코드를 넣으면 되겠지만
하드 취소키는 어떻게 해야 키를 받을수 있을지 모르겠습니다
그리고 입력을 빨리2번 클릭했더니 같은 에러 팝업이 2번 뜨더라구요
팝업이 뜨기전 팝업을 종료하려고 했더니
AlertDialog.Builder는 dismiss()가 없던데
처리할수 있는 방법이 있는지도 궁금합니다.
아시는분 답변 부탁드리겠습니다
public static void errorDialog(Context context, String title,String message) {
AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setTitle(title);
builder.setMessage(message);
builder.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
});
builder.show();
}
2012.10.05 11:14:21
builder.setNegativeButton(text, listener);
이거로 하시면 됩니다~
포지티브/네거티브 버튼 두개를 생성하면서 text 파람에 "확인" "취소"를 넣으시면 됩니다... 리스너는 각자 원하는 동작 다시구요...
다만 이렇게 했을경우 백버튼으로 취소된경우는 잡지못하구요... "취소"버튼을 눌러서만 취소 가능케 만든다면 괜찮긴 하곘지요...
setCancelable 이던가요... 무튼 그렇습니다... ㅎ 백버튼으로 취소가능하며 백버튼 취소시에도 뭔가 해주려거든 윗분이 답변해주신
setOnCancelListener를 해주시면 됩니다~




builder.setOnCancelListener(new DialogInterface.OnCancelListener() {
@Override
public void onCancel(DialogInterface dialog) {
}
});
builder.setOnKeyListener(new DialogInterface.OnKeyListener() {
@Override
public boolean onKey(DialogInterface dialog, int keycode, KeyEvent event) {
// TODO Auto-generated method stub
return false;
}
});
이거 2개가 있구랴. 하나는 Dialog가 취소(dialog가 사라질때), 나머지 하나는 key event 받을때.