標籤:
public class ProgressDialogActivity extends Activity {
private Button btn_large_pd, btn_horizontal_pd;
// 聲明進度條對話方塊
ProgressDialog mProgressDialog;
// 進度
int mCount = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_progressdialog);
btn_large_pd = (Button) findViewById(R.id.btn_large_pd);
btn_horizontal_pd = (Button) findViewById(R.id.btn_horizontal_pd);
// 設定按鈕事件監聽
btn_large_pd.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
// 建立進度條對話方塊對象
mProgressDialog = new ProgressDialog(
ProgressDialogActivity.this);
// 設定進度條風格,風格為圓形、旋轉的
mProgressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
// 設定ProgressDialog標題
mProgressDialog.setTitle("圓形進度條對話方塊提示");
// 設定ProgressDialog提示資訊
mProgressDialog.setMessage("這是一個圓形進度條對話方塊。");
// 設定ProgressDialog標題表徵圖
mProgressDialog.setIcon(R.drawable.ic_launcher);
// 設定ProgressDialog的進度條是否不明確
mProgressDialog.setIndeterminate(false);
// 設定ProgressDialog是否可以按退回鍵取消
mProgressDialog.setCancelable(true);
// 設定ProgressDialog的一個Button
mProgressDialog.setButton("確定",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int i) {
// 點擊確定按鈕取消對話方塊
dialog.cancel();
}
});
mProgressDialog.show();
}
});
btn_horizontal_pd.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
mCount = 0;
// 建立ProgressDialog對象
mProgressDialog = new ProgressDialog(
ProgressDialogActivity.this);
// 設定進度條風格,風格為長形
mProgressDialog
.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
// 設定ProgressDialog標題
mProgressDialog.setTitle("長形進度條對話方塊提示");
// 設定ProgressDialog的提示資訊
mProgressDialog.setMessage("這是一個長形進度條對話方塊!");
// 設定ProgressDialog標題表徵圖
mProgressDialog.setIcon(R.drawable.button31);
// 設定ProgressDialog進度條進度
mProgressDialog.setProgress(100);
// 設定ProgressDialog的進度條是否不明確
mProgressDialog.setIndeterminate(true);
// 設定ProgressDialog是否可以按退回按鍵取消
mProgressDialog.setCancelable(true);
// 讓ProgressDialog顯示
mProgressDialog.show();
new Thread() {
public void run() {
try {
while (mCount <= 100) {
// 由線程來控制進度
mProgressDialog.setProgress(mCount++);
Thread.sleep(1000);
}
mProgressDialog.cancel();
} catch (InterruptedException e) {
mProgressDialog.cancel();
}
}
}.start();
}
});
}
}
Android——ProgressDialog 進度條對話方塊