当一个应用在后台执行时,前台界面就不会有什么信息,这时用户根本不知道程序是否在执行、执行进度如何、应用程序是否遇到错误终止等,这时需要使用进度条来提示用户后台程序执行的进度。Android系统提供了两大类进度条样式,长形进度条(progress-BarStyleHorizontal)
和圆形进度条(progressBarStyleLarge)。进度条用处很多,比如,应用程序装载资源和网络连接时,可以提示用户稍等,这一类进度条只是代表应用程序中某一部分的执行情况,而整个应用程序执行情况呢,则可以通过应用程序标题栏来显示一个进度条,这就需要先对窗口的显示风格进行设置"requestWindowFeature(Window.FEATURE_PROGRESS)"。
先看下面效果图:
例1:(默认样式(中等圆形))
Xml代码
</>code
- <ProgressBar
- android:id="@+id/progressBar1"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- />
例2:(超大圆形)
例1:(默认样式(中等圆形))
Xml代码
</>code
- <ProgressBar
- android:id="@+id/progressBar1"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- />
例2:(超大圆形)
Xml代码
</>code
- <ProgressBar
- android:id="@+id/progressBar2"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- style="?android:attr/progressBarStyleLarge"
- />
例3:(小号圆形)
Xml代码
</>code
- <ProgressBar
- android:id="@+id/progressBar3"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- style="?android:attr/progressBarStyleSmall"
- />
例4:(标题小号圆形)
Xml代码
</>code
- <ProgressBar
- android:id="@+id/progressBar4"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- style="?android:attr/progressBarStyleSmallTitle"
- />
例4-在标题中使用小号圆形的使用代码:
Java代码
</>code
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- //设置标题不确定性进度条风格
- requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
- setContentView(R.layout.progress_bars);
- //显示标题不确定性进度条
- setProgressBarIndeterminateVisibility(true);
- //关闭标题不确定性进度条
- //setProgressBarIndeterminateVisibility(false);
- }
例5:(长方形进度条)
Xml代码
</>code
- <ProgressBar
- android:id="@+id/progressBar5"
- android:layout_width="200dp"
- android:layout_height="wrap_content"
- style="?android:attr/progressBarStyleHorizontal"
- android:max="100"
- android:progress="50"
- android:secondaryProgress="70"
- />
- android:max="100" 最大进度值100
- android:progress="50" 当前初始化进度值50
- android:secondaryProgress="70" 当前初始化第2进度值70
例5-在标题中使用长方形进度条的代码:
Java代码
</>code
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- //设置标题进度条风格
- requestWindowFeature(Window.FEATURE_PROGRESS);
- setContentView(R.layout.progress_bars);
- //显示标题进度
- setProgressBarVisibility(true);
- //设置标题当前进度值为5000(标题进度最大值默认为10000)
- setProgress(5000);
- //关闭标题进度
- //setProgressBarVisibility(false);
- }
例6:(进度对话框-圆形进度条)
Java代码
</>code
- ProgressDialog dialog = new ProgressDialog(this);
- //设置进度条风格,风格为圆形,旋转的
- dialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
- //设置ProgressDialog 标题
- dialog.setTitle("进度对话框");
- //设置ProgressDialog 提示信息
- dialog.setMessage("圆形进度条");
- //设置ProgressDialog 标题图标
- dialog.setIcon(android.R.drawable.ic_dialog_map);
- //设置ProgressDialog 的一个Button
- dialog.setButton("确定", new ProgressDialog.OnClickListener(){
- @Override
- public void onClick(DialogInterface dialog, int which) {
- }
- });
- //设置ProgressDialog 的进度条是否不明确
- dialog.setIndeterminate(false);
- //设置ProgressDialog 是否可以按退回按键取消
- dialog.setCancelable(true);
- //显示
- dialog.show();
例7:(进度对话框-长方形进度条)
Java代码
</>code
- ProgressDialog dialog = new ProgressDialog(this);
- //设置进度条风格,风格为圆形,旋转的
- dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
- //设置ProgressDialog 标题
- dialog.setTitle("进度对话框");
- //设置ProgressDialog 提示信息
- dialog.setMessage("长方形进度条");
- //设置ProgressDialog 标题图标
- dialog.setIcon(android.R.drawable.ic_dialog_alert);
- //设置ProgressDialog的最大进度
- dialog.setMax(100);
- //设置ProgressDialog 的一个Button
- dialog.setButton("确定", new ProgressDialog.OnClickListener(){
- @Override
- public void onClick(DialogInterface dialog, int which) {
- }
- });
- //设置ProgressDialog 是否可以按退回按键取消
- dialog.setCancelable(true);
- //显示
- dialog.show();
- //设置ProgressDialog的当前进度
- dialog.setProgress(50);
通过本篇文章介绍了Android 七种进度条的样式,希望大家喜欢。
如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛