ProgressDialog与ProgressBar之间的区别 ProgressDialog是动态显示出来 并且遮挡住Activity 此时不能进行交互
而ProgressBar是静态显示在布局中的 加载过程中 同时可以与Activity进行交互
ProgressDialog进度条对话框是在加载数据的时候,弹出的一个对话框,会将部分Activity遮住
ProgressBar进度条是在页面中嵌入的一个组件,不是弹出的层
ProgessBar 进度条
1 在ui控件中设置progressbar
默认是圆圈类型
设置为线性 属性为
style="?android:attr/progressBarStyleHorizontal"
在
ProgressBar的属性中加入
visibility=“” visible 可见即显示 invisible 不可见 占位置
gone不可见 不占位置
在doInbackground方法中 定义 sumLength=entity.getContentLength()
while(len=inputStream.read(b)){
curLength+=len
publishProgress(sumLength,curLength);
}
在onProgressUpdate(Integer... values)中进行进度条更新
progressBar.setMAX(values[0]);
progressBar.setProgress(values[1]);
此处的textView可以通过构造方法传过来
textview.setText(values[1]+"/"+values[0]);
ProgressDialog 进度条对话框
ProgressDialog pd=new ProgressDialog(this);
在异步构造方法中
pd.setTitle("");
pd.setMessage("");
pd.setIcon(R.drawable.xxx);
pd.setMax(100);
pd.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
pd.setCancelable(true);是否可以用退回键清除进度对话框
在onPreExecute()方法中显示对话框
pd.show();
在doInbackground方法中
int sumLength=inputStream.avaiable();
int curLength=0;
int len=0;
while((len=inputStream.read(b))!=-1){
curLength+=len;
int progress=curLength*100/sumLength;
publishProgress(progress);
}
在onpostExecute()方法中 关闭对话框
pd.dimiss();
本文详细对比了ProgressDialog与ProgressBar的功能及应用场景。ProgressDialog用于加载数据时显示对话框遮挡Activity,不可交互;ProgressBar则嵌入UI中,加载时仍可与Activity交互。文章还介绍了两种进度条的具体实现方法。
1207

被折叠的 条评论
为什么被折叠?



