투케이2K

555. (Android/Java) [유틸 파일] showAlertDetail : Alert 팝업창 호출 및 디테일 세부 내용 확인 팝업창 호출 메소드 본문

Android

555. (Android/Java) [유틸 파일] showAlertDetail : Alert 팝업창 호출 및 디테일 세부 내용 확인 팝업창 호출 메소드

투케이2K 2023. 4. 27. 21:38

[개발 환경 설정]

개발 툴 : AndroidStudio

개발 언어 : Java

 

[소스 코드]

 

    // -----------------------------------------------------------------------------------------
    // TODO [SEARCH FAST] : [VIEW] : [Alert 팝업창 호출 및 디테일 세부 내용 확인 팝업창 호출 메소드]
    // -----------------------------------------------------------------------------------------
    public static void showAlertDetail(final Context mContext, String header, String content, String detail, String ok) {
        // ===============================================================
        S_Log._D_("팝업창 호출 실시", new String[] {
                "header :: " + String.valueOf(header),
                "content :: " + String.valueOf(content),
                "detail :: " + String.valueOf(detail)
        });
        // ===============================================================

        try {
            new Handler(Looper.getMainLooper()).postDelayed(new Runnable() {
                @Override
                public void run() {

                    if (mContext != null){

                        // [AlertDialog 팝업창 생성]
                        new AlertDialog.Builder(mContext)
                                .setTitle(header) //[팝업창 타이틀 지정]
                                //.setIcon(R.drawable.app_icon) //[팝업창 아이콘 지정]
                                .setMessage(content) //[팝업창 내용 지정]
                                .setCancelable(false) //[외부 레이아웃 클릭시도 팝업창이 사라지지않게 설정]
                                .setPositiveButton(ok, new DialogInterface.OnClickListener() {
                                    @Override
                                    public void onClick(DialogInterface dialog, int which) {
                                        // TODO Auto-generated method stub
                                        // -----------------------------------------
                                        // TODO [확인 버튼 클릭 이벤트 처리]
                                        // -----------------------------------------
                                        S_Log._D_("팝업창 호출 [확인] 클릭", null);
                                        // -----------------------------------------
                                    }
                                })
                                .setNegativeButton("자세히 보기", new DialogInterface.OnClickListener() {
                                    @Override
                                    public void onClick(DialogInterface dialog, int which) {
                                        // TODO Auto-generated method stub
                                        // -----------------------------------------
                                        S_Log._E_("팝업창 호출 [자세히 보기] 클릭", null);
                                        // -----------------------------------------
                                        try {
                                            new AlertDialog.Builder(mContext)
                                                    .setTitle(header) //[팝업창 타이틀 지정]
                                                    //.setIcon(R.drawable.app_icon) //[팝업창 아이콘 지정]
                                                    .setMessage(detail) //[팝업창 내용 지정]
                                                    .setCancelable(false) //[외부 레이아웃 클릭시도 팝업창이 사라지지않게 설정]
                                                    .setPositiveButton(ok, new DialogInterface.OnClickListener() {
                                                        @Override
                                                        public void onClick(DialogInterface dialog, int which) {
                                                            // TODO Auto-generated method stub
                                                            // -----------------------------------------
                                                            // TODO [확인 버튼 클릭 이벤트 처리]
                                                            // -----------------------------------------
                                                            S_Log._D_("[자세히 보기] 팝업창 호출 [확인] 클릭", null);
                                                            // -----------------------------------------
                                                        }
                                                    })
                                                    .show();
                                        }
                                        catch (Exception e){}
                                        // -----------------------------------------
                                    }
                                })
                                .show();

                    }

                }
            }, 0);
        }
        catch (Exception e) {
            e.printStackTrace();
        }
    }

 

반응형
Comments