Notice
Recent Posts
Recent Comments
Link
투케이2K
566. (Android/Java) Alert 팝업창 조건 체크 dismiss 닫기 막기 - getButton 본문
[개발 환경 설정]
개발 툴 : AndroidStudio
개발 언어 : Java
[소스 코드]
// ---------------------------------------------------------------
// [로직 처리 실시]
// ---------------------------------------------------------------
try {
new Handler(Looper.getMainLooper()).postDelayed(new Runnable() {
@Override
public void run() {
// -------------------------------------------
// [변수 선언]
// -------------------------------------------
AlertDialog alertDialog;
// -------------------------------------------
// [AlertDialog 팝업창 생성]
// -------------------------------------------
AlertDialog.Builder builder = new AlertDialog.Builder(A_Intro.this);
builder.setTitle("알림"); // [팝업창 타이틀 지정]
//builder.setIcon(R.drawable.app_icon); // [팝업창 아이콘 지정]
builder.setMessage("조건 체크 팝업창 입니다"); // [팝업창 내용 지정]
builder.setCancelable(false); // [외부 레이아웃 클릭시도 팝업창이 사라지지않게 설정]
builder.setPositiveButton("확인", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// -----------------------------------------
// TODO [확인 버튼 클릭 이벤트 처리]
// -----------------------------------------
S_Log._D_("팝업창 호출 [확인] 클릭", null);
// -----------------------------------------
}
});
builder.setNegativeButton("취소", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// -----------------------------------------
S_Log._E_("팝업창 호출 [취소] 클릭", null);
// -----------------------------------------
}
});
alertDialog = builder.create();
alertDialog.show();
// -------------------------------------------
// [확인 버튼 재상속 조건이 맞는 경우만 dismiss]
// -------------------------------------------
alertDialog.getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// -----------------------------------------
S_Log._W_("팝업창 호출 재상속 [확인] 클릭", null);
// -----------------------------------------
if(closeDialog == true) { // [닫기]
alertDialog.dismiss();
}
else { // [플래그 값 변경]
closeDialog = true;
}
}
});
}
}, 0);
}
catch (Exception e) {
e.printStackTrace();
}
[결과 출력]
반응형
'Android' 카테고리의 다른 글
Comments