투케이2K

218. (AndroidStudio/android/java) alert 팝업창 dismiss 사라짐 상태 감지 실시 본문

Android

218. (AndroidStudio/android/java) alert 팝업창 dismiss 사라짐 상태 감지 실시

투케이2K 2021. 11. 16. 12:17

[개발 환경 설정]

개발 툴 : AndroidStudio

개발 언어 : java


[소스 코드]

    // TODO [팝업창 사용 정의 실시]
    AlertDialog.Builder builder;
    AlertDialog alertDialog;
    // alertDialog.dismiss(); // [팝업창 없앰 실시]

    public void getAlertDialog(String header, String content, String ok, String no, String normal){
        //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_Main.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();

        // [팝업창 dismiss() 종료 상태 감지]
        alertDialog.setOnDismissListener(new DialogInterface.OnDismissListener() {
            @Override
            public void onDismiss(final DialogInterface arg0) {
                // [SEARCH FAST] : [액티비티 종료]
                finish();
                overridePendingTransition(0,0);
            }
        });
        try {
            // [팝업창 활성]
            alertDialog.show();
        }
        catch (Exception e){
            e.printStackTrace();
        }
    }

 

반응형
Comments