투케이2K

171. (AndroidStudio/android/java) 반복 재사용 AlertDialog 팝업창 호출 메소드 정의 본문

Android

171. (AndroidStudio/android/java) 반복 재사용 AlertDialog 팝업창 호출 메소드 정의

투케이2K 2021. 7. 6. 09:16

/* =========================== */

[ 개발 환경 설정 ]

개발 툴 : AndroidStudio

개발 언어 : java

/* =========================== */

/* =========================== */

[소스 코드]

 

/** ======== [재사용 AlertDialog 팝업창 사용 방법 정의 실시] ======== **/
getAlertDialog("[알 림]",
                    "message content",
                    "확인", "취소", "");




/** ======== [재사용 AlertDialog 팝업창 호출 메소드 정의 실시] ======== **/
    AlertDialog.Builder builder;
    AlertDialog alertDialog;

    public void getAlertDialog(String header, String content, String ok, String no, String normal){
        //TODO [이미 활성화된 창이 있는지 확인 실시]
        try {
            if(alertDialog != null){
                alertDialog.dismiss(); // [다이얼로그가 활성화 되어있으면 취소]
            }
        }
        catch (Exception e){
            e.printStackTrace();
        }

        //TODO [타이틀 및 내용 표시]
        final String Tittle = String.valueOf(header);
        final String Message = String.valueOf(content);

        //TODO [버튼 이름 정의]
        String buttonYes = String.valueOf(ok);
        String buttonNo = String.valueOf(no);
        String buttonNature = String.valueOf(normal);

        builder = new AlertDialog.Builder(A_Finger.this);
        builder.setTitle(Tittle); // [팝업창 타이틀 지정]
        builder.setMessage(Message); // [팝업창 내용 지정]
        //builder.setIcon(R.drawable.ui_app_icon); // [팝업창 아이콘 지정]
        builder.setCancelable(false); // [바깥 레이어 클릭 막기]
        builder.setPositiveButton(buttonYes, new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                // TODO Auto-generated method stub
                // TODO [확인 버튼 클릭 이벤트]
            }
        });
        builder.setNegativeButton(buttonNo, new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                // TODO Auto-generated method stub
                // TODO [취소 버튼 클릭 이벤트]
            }
        });
        builder.setNeutralButton(buttonNature, new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                // TODO Auto-generated method stub
                // TODO [Nautral 버튼 클릭 이벤트]
            }
        });
        alertDialog = builder.create();
        try {
            alertDialog.show();
        }
        catch (Exception e){
            e.printStackTrace();
        }
    }

/* =========================== */

반응형
Comments