自定义ProgressBar样式

在开发android应用的过程中,一个具有良好的用户的体验的项目,往往少不了ProgressBar。我们可以在各种各样的应用中,发现各种各样的样式的ProgressBar,那我们该如何定义我们自己的ProgressBar呢。

ProgressBar总体上分两种情况,水平进度条和圆形进度条。在定义样式时,需要区分两种进度条,否则将不起效果(至于原因,是跟framework有关)。

1. 自定义圆形进度条样式, custom_progress_bg.xml


为什么要这样定义呢,其实我们可以找到系统内置的样式,比如
  style="?android:attr/progressBarStyleLarge"
其内部也是这样的,因此,我们只要在布局文件中
 custom_progress_bg"
            android:indeterminateDuration="100"
            android:indeterminateBehavior= "repeat"
            android:layout_margin="10dp" />


 如此,自定义的圆形进度条样式就定义出来了 
  

2. 自定义水平进度条样式

  首先,在drawable目录下,新建layer-list资源,progress_bg


   
      
     @android:id/background"   android:drawable="@drawable/bg" />    
      
     @android:id/secondaryProgress"   android:drawable="@drawable/sp"/>  
    
     @android:id/progress" android:drawable="@drawable/pg"/>  
   

	
然后,在布局文件中,progress的属性中,这样实用,android:progressDrawable = "@drawable/ progress_bg";

注意,上面代码中红色表明的id,是不能随便更改的。


在我们做项目的过程中,只要将圆形进度条和水平进度条区分开来,自定义实用样式,就不会有问题了。






你可能感兴趣的:(android随笔)