반응형
안드로이드, AlertDialog Ok, Cancel button dismiss 방지 코드 |
가끔 AlertDialog 에서 Ok 혹은 Cancel 버튼 등을 눌렀을 때 dialog 를 dismiss 하지 않고 싶을 때가 있다. 대표적인 경우가 dialog 를 통해서 어떤 input 을 받는데 validation 조건을 만족시키지 못해서 다시 입력하라고 할 경우! 이럴 때 OnShowListener 를 이용하여, 필요한 버튼에 OnClickListener 를 내 것으로 걸어주면 된다.
final AlertDialog alertDialog = ....;
alertDialog.setOnShowListener(new DialogInterface.OnShowListener() {
@Override
public void onShow(DialogInterface dialog) {
Button posBtn = alertDialog.getButton(AlertDialog.BUTTON_POSITIVE);
posBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// 여기서 조건에 따라 alertDialog.dismiss() 를 호출
}
});
}
});
반응형
'프로그래밍 놀이터 > 안드로이드, Java' 카테고리의 다른 글
[Java] Serializable & Externalizable (0) | 2013.09.09 |
---|---|
[android] Nexus7 에서 잘 작동하는 앱 만들기. (0) | 2013.09.09 |
[Java] String Tokenizer 예제 코드 (0) | 2013.09.07 |
[android] 허니컴( 혹은 ICS )부터 추가된 대표 기능들. (2) | 2013.09.07 |
[Java] 메소드 오버로딩 ( Method Overloading ) 에 대하여. (0) | 2013.09.06 |
댓글