当一个程序在后台执行时,前面界面就不会有什么信息,这时用户根本不知道程序是否在执行、执行进度如何、是否遇到错误而终止等,这时需要使用进度条提示用户后台程序执行的进度。ProgressBar的用法非常简单,但非常实用。修改“activity_main.xml”文件的代码如下:
图5-9 ImageView透明度值的使用效果
重新运行程序,会在屏幕中看到一个圆形进度条正在旋转,如图5-10所示。
图5-10 ProgressBar的使用效果(www.xing528.com)
既然进度条表示程序正在加载数据,那么就肯定有数据加载完成的时刻,怎么才能让进度条在数据加载完成后自动消失呢?这里需要用到另外一个Android控件的属性,那就是android:visibility,这个属性是所有控件都具备的,包括前面介绍过的TextView、EditText等。这个属性的可选值有3种:visible、invisible和gone。visible表示控件是可见的,这个值是默认值,当不指定android:visibility的值时,这个控件默认是可见的,这点在前面已经体会到了。invisible表示控件不可见,但仅是不可见,并不代表控件不存在,控件还是存在于界面中,只不过是人们无法看见而已,可以理解为当前的控件已经变成透明状态。gone表示控件不仅不可见,并且不再占用屏幕的空间。
同时,Android系统提供了setVisibility()方法,通过传入View.visible、View.invisible和View.gone,就可以让人们自如地控制控件的可见性。
下面通过点击按钮实现进度条的消失或出现。修改“MainActivity.java”文件的代码如下:
在上面的代码中,在Button的监听事件中,通过getVisibility()方法判断当前的ProgressBar是否可见,如果可见就将ProgressBar隐藏,如果不可见就把ProgressBar显示出来。重新运行程序,不停地点击按钮,就可以看到进度条在不停地显示和隐藏。
ProgressBar还有另外几种样式,比如水平进度条等,具体的使用方法需要读者自己探索。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。