package com.example.progressdialog;
/*博客作者 X_x_O_0_o
* 日期2015-1-21
* 程序功能。尝试简单的进度条的使用。
* 第一个按钮是启动圆形进度条的提示框。
* 第二个按钮时启动方形进度条的提示框。
* */
import android.app.Activity;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends Activity {
private Button button1;
private Button button2;
private ProgressDialog dialog;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button1 = (Button)this.findViewById(R.id.button1);
button2 = (Button)this.findViewById(R.id.button2);
dialog = new ProgressDialog(MainActivity.this);
button1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
dialog.setTitle("圆形");
dialog.setMessage("正在下载,请稍候……");
// dialog.setCancelable(false); //设置进度不到结束不退出,点击空白处和按返回键都不退出。
dialog.show();
// dialog.dismiss(); //用代码来设置退出
}
});
button2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
dialog.setTitle("方形");
dialog.setMessage("正在下载,请稍候……");
dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); //设置方形
dialog.setMax(100); //设置最大刻度
dialog.setProgress(60); //设置进度条
dialog.setSecondaryProgress(80);//设置次进度条(缓存进度条)
dialog.show();
}
});
}
}
收获:此进度的使用不难理解。
ProgressDialog的使用:
----声明:private ProgressDialog dialog;
----获取:dialog = new ProgressDialog(MainActivity.this);
----然后在button的单击事件中设置就可以。
----设置标题:dialog.setTittle();,设置提示信息:dialog.setMessage();
----设置长型:dialog.setProgressStyle(ProgressDialog.Style_HORIZONTAIN);,默认是圆形的。
----设置最大刻度:dialog.setMax();
----设置进度条:dialog.setPregress();
----设置此进度条(缓存条):dialog.setSecondaryProgress();
----设置不可中途停止:dialog.setCanclable(false); 即不可点击空白区域退出,也不可点击返回按钮退出
----设置显示:dialog.show();
----设置退出:dialog.dismiss();
以上,就是所有的收获了,进度条的设置应该用些逻辑语句来操作。按实际工作的百分比来对应进度条的百分比。
结果展示:
----点击第一个后弹出圆形
----点击第二个后弹出方形
结果说明:你可能会发现点击了圆形后,返回再点方形就会崩溃。但点击先点击方形后再去点击圆形就不会。猜想,应该是两个进度条用的是一个dialog对象的原因,第二次使用应该取消上次调用过的设置,否则就会冲突导致崩溃。