我们知道Android为ProgressBar提供了几种不同的样式,不过若是只是这几种样式还不能满足我们对界面的需求。例如,我们ProgressBar的前景和背景。一般情况下我们希望这是一个按照我们自己意愿的这样一个前景和背景。

这里又要分成几种不同的情况:

1.规则的长方形;

2.环形;

3.不规则图形;

我们这里只要对两种情况进行一个讨论。就是规则的长方形和不规则图形。为什么不对第二种情况进行讨论是因为规则的长方形和不规则的图形笔者之前有用到过,环形的进度条笔者没用到过,笔者在这里想偷个懒,其实很简单的东西,相信大家也是有办法知道该怎么做。

好了,废话不多说。先是规则的长方形进度条。对于规则的长方形进度条,是要借助Android自带的水平进度条,只是我们在xml文件中对ProgressBar进行一个进度样式属性设置。具体xml文件代码如下:

<ProgressBar        android:id="@+id/activity_main_progressbar"        style="?android:attr/progressBarStyleHorizontal"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:progressDrawable="@drawable/progressbg"        android:layout_below="@+id/textView1" />
其中,style="?android:attr/progressBarStyleHorizontal"对设置它的样式,是水平还是环形等等。而android:progressDrawable="@drawable/progressbg"则是对前景和背景的一个设置。不一样的是progressbg也是一个xml文件,而不是我们所熟悉的图片了。是不是很奇怪为什么@drawable中还能放图片之外的东西?然后这个图片之外的东西对我们Android上界面的一些基本需求还是作出了巨大的贡献的。这个progressbg.xml文件中的具体代码如下:

<?xml version="1.0" encoding="utf-8"?><layer-list xmlns:android="http://schemas.android.com/apk/res/android" >    <!--  设置背景色图像资源  -->   <item android:id="@android:id/background" android:drawable="@drawable/progressbggreen" />   <!--  设置第一级进度条颜色图像资源  -->   <item android:id="@android:id/progress" android:drawable="@drawable/progressbgpink" /></layer-list>
接下来是Java代码,当然如果你之前就在xml的layout文件中写好了ProgressBar的进度值,并且不需要去设置其进度值,那么接下来的代码大可不必看了。Java中的关键代码如下(其实的确也是废话一句):

ProgressBar progressBar = (ProgressBar) findViewById(R.id.activity_main_progressbar);progressBar.setProgress(progress);
以上就是本程序的关键代码,如果需要这个程序的源代码(本程序的Demo中还写了对进度条的动态刷新),点击此网络连接进行下载


说了规则的长方形进度条现在再来说说不规则的进度条。对于不规则的进度条,我们用到一个比较新的概念——蒙板效果。之前我写过一篇有关于这个蒙板效果的博客,感兴趣的朋友可以点击如下连接查看。。。

—————————— Android中用图片自定义一个进度条(实现蒙板效果)——————————
里面也是蒙板效果的Demo源码的。这里大家应该了解一个问题——规则的长方形进度条只是不规则图形进度条的一种特殊情况。


更多相关文章

  1. 浅析Android中强大的Dialog
  2. Android闹钟拓展版【安卓闹钟可换壁纸版】
  3. Android样式的开发:selector篇
  4. 摄像头Camera视频源数据采集解析
  5. 【iOS-cocos2d-X 游戏开发之十六】配置你的Cocos2dx项目编译后的
  6. 实现类似Android的网格效果的列表视图
  7. [置顶] Android(安卓)通知栏Notification的整合 全面学习 (一个DE
  8. 如何跳过Nexus 7二代的开机设置
  9. Android--设置软键盘的显示和隐藏

随机推荐

  1. android显示圆形图片
  2. android 录音
  3. Android之merge(二)
  4. android 给textview部分文字设置点击事件
  5. Android(安卓)-- Button [ 学习笔记 一 ]
  6. Android(安卓)自定义加载view(菊花效果)
  7. android获取版本信息
  8. android获取短信state
  9. android 如何从sqlite读取数据到spinner
  10. Browsing Android(安卓)Source in Eclips