<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello_world" />
<Button
android:id="@+id/Button01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="圆形进度条"
/>
<Button
android:id="@+id/Button02"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="长形进度条"
/>
</LinearLayout>
package com.example.jindu;
import android.app.Activity;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
public class ProgressDialogActivity extends Activity {
private Button mButton01,mButton02;
int m_count = 0;
//声明进度条对话框
ProgressDialog m_pDialog;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.progress_dialog);
mButton01 = (Button)this.findViewById(R.id.Button01);
mButton02 = (Button)this.findViewById(R.id.Button02);
mButton01.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
m_pDialog = new ProgressDialog(ProgressDialogActivity.this);
m_pDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
m_pDialog.setTitle("提示");
m_pDialog.setIcon(R.drawable.sun);
//设置ProgressDialog提示信息
m_pDialog.setMessage("这是一个圆形进度条对话框");
//设置ProgressDialog的进度条是否不明确
m_pDialog.setIndeterminate(false);
//设置ProgressDialog是否可以按退回按键取消
m_pDialog.setCancelable(true);
//设置ProgressDialog的一个Button
m_pDialog.setButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
//点击确定按钮取消对话框
dialog.cancel();
}
});
//让ProgressDialog显示
m_pDialog.show();
}
});
//设置mButton02的监听事件
mButton02.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
m_count = 0;
m_pDialog = new ProgressDialog(ProgressDialogActivity.this);
m_pDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
m_pDialog.setTitle("提示");
m_pDialog.setMessage("这是一个长形对话框进度条");
m_pDialog.setIcon(R.drawable.cloud);
//设置进度条的长度
m_pDialog.setProgress(100);
m_pDialog.setIndeterminate(false);
m_pDialog.setCancelable(true);
m_pDialog.show();
new Thread(){
public void run(){
try {
while(m_count <= 100){
m_pDialog.setProgress(m_count++);
Thread.sleep(100);
}
m_pDialog.cancel();
} catch (Exception e) {
e.printStackTrace();
}
}
}.start();
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.progress_dialog, menu);
return true;
}
}