안드로이드 ProgressDialog 만들기


생상자가 아래와 같이 2가지 형태가 있다.


ProgressDialog(Context context)

ProgressDialog(Context context, int theme)


첫 번째는 디폴트 형태로 만드는 방식이고 두 번째는 다이알로그의 형태(배경 색, 모양, 크기...)를 두 번째 매개인자가 지정하는 형태(theme)대로 만드는 방식이다.


theme에는 다음과 같은 형태들이 있다.


//검정색 바탕에 흰 글씨(폭이 좁은 형태)

ProgressDialog pDialog = 

                new ProgressDialog(TestActivity.this, AlertDialog.THEME_HOLO_DARK); 

       

//흰색 바탕에 검정색 글씨(폭이 좁은 형태)

ProgressDialog pDialog = 

                   new ProgressDialog(TestActivity.this, AlertDialog.THEME_HOLO_LIGHT); 

       

//검정색 바탕에 흰 글씨(폭이 넓은 형태)

ProgressDialog pDialog = 

                 new ProgressDialog(TestActivity.this, AlertDialog.THEME_TRADITIONAL); 

       

//장비의 안드로이드 버전에 따른 형태(검정색 바탕)

ProgressDialog pDialog = 

         new ProgressDialog(TestActivity.this, AlertDialog.THEME_DEVICE_DEFAULT_DARK);

       

//장비의 안드로이드 버전에 따른 형태(흰색 바탕) - 아래 이미지와 같다

ProgressDialog pDialog = 

        new ProgressDialog(TestActivity.this, AlertDialog.THEME_DEVICE_DEFAULT_LIGHT);




이들 Theme은 AlertDialog 클래스에 정의되어 있다. 그런데 안드로이드 버전 23부터는 

대부분 deprecated되었다.

아래는 코드 조각이다.


ProgressDialog pDialog = new ProgressDialog(TestActivity.this);

pDialog.setCancelable(true);

//pDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); //직선 막대그래프 형태

pDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); //원형 형태

//pDialog.setTitle("등록 상황"); //타이틀

pDialog.setMessage("잠시만 기다리세요...");

pDialog.show();




+ Recent posts