Android的Widget,有许多是为了与User交互而特别设计的,但也有部分是作为程序提示、显示程序运行状态的Widget。如ProgressDialog与ProgressBar就能再UI中动态显示
一个加载图标显示程序运行状态。
ProgressDialog是继承自Android.app.ProgressDialog所设计的互动对话窗口,在应用时,必须新建ProgressDialog对象,在运行时会弹出“对话框”作为提醒,此时应用程序后台失去焦点(即此时无法对UI组件进行操作),直到进程结束后,才会将控制权交给应用程序,如果在Activity当中不希望后台失焦,又希望提示User有某后台程序正处于忙碌阶段,那么ProgressBar就会派上用场了。
ProgressDialog是一种对话框进度条。代码如下:
ProgressDialog pDialog=new ProgressDialog(MainActivity.this); pDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);//设置风格为圆形进度条 pDialog.setTitle("提示");//设置标题 pDialog.setMessage("账号验证..."); // pDialog.setIndeterminate(false);//设置进度条是否为不明确 pDialog.setCancelable(true);//设置进度条是否可以按退回键取消 pDialog.show();//显示该Dialog
当然通过 pDialog.cancle()的调用,我们就可以关闭这个ProgressDialog对话框。
还有一种标题栏进度条,就是在标题栏中出现一个转圈的图形显示运行进度。
步骤如下:
调用Activity的requestWindowFeatu()方法获得进度条。
调用Activity的setProgressBarIndeterminateVisibility()方法显示进度条...
这种进度条相对用的比较少...
还有一种进度条就是ProgressBar了。。。
Android提供的ProgressBar Widget控件与ProgressDialog应用目标不同,在程序一开始即可在main.xml Layout当中布局,先将部署在Layout里的ProgressBar的属性设为隐藏(一开始看不见),而后使用进程来“假装”程序忙碌中,但不同的是,可在进程当中取得运行时的进度,在“运行”的过程中,将运行进度通过TextView显示出来。本范例除了学习ProgressBar Widget的显示及使用之外,另一个学习关键则是Handler的使用,因为新起的进程无法访问Activity里的Widget,也无法将运行状态外送出来,所以需要通过Handler及Message对象,将进程里的状态往外传递,最后由Activity的Handler事件接收取得运行的状态。
待续。。。