Notice
Recent Posts
Recent Comments
Link
투케이2K
500. (Android/Java) [유틸 파일] recycleAlert : 재사용 Alert 팝업창 호출 실시 본문
[개발 환경 설정]
개발 툴 : AndroidStudio
[소스 코드]
// -----------------------------------------------------------------------------------------
// TODO [SEARCH FAST] : [RECYCLE] : [재사용 Alert 팝업창 호출 실시]
// -----------------------------------------------------------------------------------------
static AlertDialog.Builder builder;
static AlertDialog alertDialog;
public static void recycleAlert(final Context mContext, final int setType, String header, String content, String ok, String no) {
// -----------------------------------------
/**
* // -----------------------------------------
* [recycleAlert 메소드 설명]
* // -----------------------------------------
* 1. 재사용 Alert 팝업창 호출 처리 메소드
* // -----------------------------------------
* */
// -----------------------------------------
//*
S_Log.ltd("================================================");
S_Log.cnt("["+ACTIVITY_NAME+" >> "+C_Util.getNowMethod(1)+" :: 재사용 팝업창 호출 실시]");
S_Log.cnt("-----------------------------------------");
S_Log.cnt("[setType :: "+String.valueOf(setType)+"]");
S_Log.cnt("-----------------------------------------");
S_Log.cnt("[header :: "+String.valueOf(header)+"]");
S_Log.cnt("-----------------------------------------");
S_Log.cnt("[content :: "+String.valueOf(content)+"]");
S_Log.lbd("================================================");
// */
// -----------------------------------------
/** [사용 방법 정의] */
/*
// [팝업창 호출 실시]
C_Ui_View.recycleAlert(
A_Main.this,
1, // [와이파이 설정창 이동 코드]
"알림",
"현재 연결된 네트워크가 없습니다. \n 설정에서 다시 확인해주세요.",
"설정",
"취소");
// */
// -----------------------------------------
// [타이틀 및 내용 표시]
final String Tittle = String.valueOf(header);
final String Message = String.valueOf(content);
// -----------------------------------------
// [버튼 이름 정의]
String buttonYes = String.valueOf(ok);
String buttonNo = String.valueOf(no);
// -----------------------------------------
try {
new Handler(Looper.getMainLooper()).postDelayed(new Runnable() {
@Override
public void run() {
// [기존 활성화 된 팝업창 종료]
if (alertDialog != null){
alertDialog.dismiss();
alertDialog = null;
}
// [AlertDialog 팝업창 생성]
builder = new AlertDialog.Builder(mContext);
builder.setTitle(Tittle); //[팝업창 타이틀 지정]
// builder.setIcon(R.drawable.app_icon); //[팝업창 아이콘 지정]
builder.setMessage(Message); //[팝업창 내용 지정]
builder.setCancelable(false); //[외부 레이아웃 클릭시도 팝업창이 사라지지않게 설정]
builder.setPositiveButton(buttonYes, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
// -----------------------------------------
// TODO [확인 버튼 클릭 이벤트 처리]
if (setType == 0) {
}
// -----------------------------------------
// [팝업창 null 처리]
if (alertDialog != null){
alertDialog.dismiss();
alertDialog = null;
}
// -----------------------------------------
}
});
builder.setNegativeButton(buttonNo, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
// -----------------------------------------
// [팝업창 null 처리]
if (alertDialog != null){
alertDialog.dismiss();
alertDialog = null;
}
// -----------------------------------------
}
});
alertDialog = builder.create();
try {
alertDialog.show();
}
catch (Exception e){
e.printStackTrace();
}
}
}, 0);
}
catch (Exception e) {
e.printStackTrace();
}
}
반응형
'Android' 카테고리의 다른 글
Comments