레이블이 안드로이드 ProgressDialog 만들기인 게시물을 표시합니다. 모든 게시물 표시
레이블이 안드로이드 ProgressDialog 만들기인 게시물을 표시합니다. 모든 게시물 표시

2015년 11월 2일 월요일

안드로이드 ProgressDialog 만들기





안드로이드 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();