본문 바로가기

Android/Dialog

안드로이드/Android Handler를 사용한 ProgressDialog 띄우기


 < 개발 환경 > 
   SDK 버전 : 안드로이드 SDK 2.2  
   API LEVEL : 8 
   이클립스 버젼 : Indigo
   테스트단말 : 삼성갤럭시 S2




안드로이드/Android Handler를 사용한 ProgressDialog 띄우기




package arabiannight.tistory.com.progressdialog2;

import android.app.Activity;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.os.Handler;

public class TestProgressDialog2Activity extends Activity {
	
	private Handler mHandler;
	private ProgressDialog dialog; 
	
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        mHandler = new Handler();
        
        dialog = new ProgressDialog(this);
        dialog.setMessage("잠시만 기다려 주세요.");
        dialog.setCancelable(false);
        
        dialog.setButton("ok", new DialogInterface.OnClickListener() {
			@Override
			public void onClick(DialogInterface idialog, int which) {
				if(dialog != null && dialog.isShowing()){ 
					dialog.dismiss();
				}
			}
		});
        
        dialog.setButton2("cancel", new DialogInterface.OnClickListener() {
			@Override
			public void onClick(DialogInterface idialog, int which) { 
				if(dialog != null && dialog.isShowing()){ 
					dialog.dismiss();
				}
			}
		});
        
        dialog.show();
        
        mHandler.postDelayed(mRunnable, 5000);
        
    }
    
    private Runnable mRunnable = new Runnable() {
		@Override
		public void run() {
			if(dialog != null && dialog.isShowing()){
				dialog.dismiss();
			}
		}
	};
}


파일첨부 :


TestProgressDialog2.zip



스크린샷 :