Android利用android:indeterminateDrawable来实现ProgressBar三种方式

来源:互联网 发布:udp使用的端口 编辑:程序博客网 时间:2024/04/28 21:56

方式1:(效果为补间动画一样)

[html] view plain copy print?
  1. <ProgressBar  
  2.     android:layout_width="wrap_content"  
  3.     android:layout_height="wrap_content"  
  4.     android:indeterminate="true"  
  5.     android:indeterminateDrawable="@anim/loading" />  
其中动画loading:
[html] view plain copy print?
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <animation-list android:oneshot="false"  
  3.   xmlns:android="http://schemas.android.com/apk/res/android">  
  4.   <item android:duration="60" android:drawable="@drawable/load_1" />  
  5.   <item android:duration="60" android:drawable="@drawable/load_3" />  
  6.   <item android:duration="60" android:drawable="@drawable/load_5" />  
  7.   <item android:duration="60" android:drawable="@drawable/load_7" />  
  8.   <item android:duration="60" android:drawable="@drawable/load_9" />  
  9.   <item android:duration="60" android:drawable="@drawable/load_11" />  
  10.   <item android:duration="60" android:drawable="@drawable/load_13" />  
  11.   <item android:duration="60" android:drawable="@drawable/load_15" />  
  12. </animation-list>  

方式2:(效果为自定义图片让其不断的旋转)

[html] view plain copy print?
  1. <ProgressBar  
  2.     android:layout_width="wrap_content"  
  3.     android:layout_height="wrap_content"  
  4.     android:indeterminate="true"  
  5.     android:indeterminateDrawable="@drawable/progressbar" />  
其中progressbar:
[html] view plain copy print?
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <layer-list xmlns:android="http://schemas.android.com/apk/res/android" >  
  3.   
  4.     <item>  
  5.         <rotate  
  6.             android:drawable="@drawable/load"  
  7.             android:fromDegrees="0.0"  
  8.             android:pivotX="50.0%"  
  9.             android:pivotY="50.0%"  
  10.             android:toDegrees="360.0" />  
  11.      <span style="white-space:pre">   </span>    <!-- 其中360.0值越大,转的圈圈越快 -->  
  12.     </item>  
  13.   
  14. </layer-list>  

方式三:(效果为自定义颜色让其不断的旋转)

[html] view plain copy print?
  1. <ProgressBar  
  2.     android:layout_width="wrap_content"  
  3.     android:layout_height="wrap_content"  
  4.     android:indeterminate="true"  
  5.     android:indeterminateDrawable="@drawable/progressbar2" />  
其中progressbar2:
[html] view plain copy print?
  1. <pre name="code" class="html"><?xml version="1.0" encoding="utf-8"?>  
  2. <rotate xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:fromDegrees="0"  
  4.     android:pivotX="50%"  
  5.     android:pivotY="50%"  
  6.     android:toDegrees="360" >  
  7.     <shape  
  8.         android:innerRadiusRatio="3"  
  9.         android:shape="ring"  
  10.         android:thicknessRatio="8"  
  11.         android:useLevel="false" >  
  12.         <gradient  
  13.             android:centerColor="#FFFFFF"  
  14.             android:centerY="0.50"  
  15.             android:endColor="#1E90FF"  
  16.             android:startColor="#000000"  
  17.             android:type="sweep"  
  18.             android:useLevel="false" />  
  19.     </shap 

0 0
原创粉丝点击