ProgressWheel:Android开源圆环进度条

小近 发布于 2014/12/09 13:52
阅读 2K+
收藏 7

这是一个自定义Android组件,用于代替标准进度条组件。实现各种进度条样式,包括圆环,扫描等。

XML:
在你的attr.xml(res/value)中加入以下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<declare-styleable name="ProgressWheel">  
    <attr name="text"format="string"/>  
    <attr name="textColor"format="color"/>  
    <attr name="textSize"format="dimension"/>  
    <attr name="barColor"format="color"/>  
    <attr name="rimColor"format="color"/>  
    <attr name="rimWidth"format="dimension"/>  
    <attr name="spinSpeed"format="integer"/>    
    <attr name="circleColor"format="color"/>    
    <attr name="radius"format="dimension"/>  
    <attr name="barWidth"format="dimension"/>  
    <attr name="barLength"format="dimension"/>
    <attr name="delayMillis"format="dimension"/>
    <attr name="contourColor"format="color"/>
    <attr name="contourSize"format="float"/>
</declare-styleable>

在你的root view 中加入

1
xmlns:ProgressWheel="http://schemas.android.com/apk/res/com.visualdenim.schooltraq"
1
在你的xml合适的地方加入 组件
1
2
3
4
5
6
7
8
9
10
11
12
13
<com.todddavies.components.progressbar.ProgressWheel  
    android:id="@+id/pw_spinner"    
    android:layout_width="200dp"   
    android:layout_height="200dp"  
    android:layout_centerInParent="true"  
    ProgressWheel:text="Authenticating..."   
    ProgressWheel:textColor="#222"  
    ProgressWheel:textSize="14sp"  
    ProgressWheel:rimColor="#330097D6"  
    ProgressWheel:barLength="60dp"   
    ProgressWheel:barColor="#0097D6"  
    ProgressWheel:barWidth="5dp"  
    ProgressWheel:rimWidth="2dp"/>

Java:

你需要从layout中获得进度条,或者初始化

1
2
ProgressWheel pw = newProgressWheel(myContext, myAttributes);
ProgressWheel pw = (ProgressWheel) findViewById(R.id.pw_spinner);

使用.spin() 开始进度条滚动, .stopSpinning 停止进度条滚动

增加进度有点棘手,  你可以调用.incrementProgress(), 但是这样就超过了360度, 因为一个圆有360度, 你超过360度就会自动重置, 一个百分百自动分配

Sample Image Sample Image 2 Sample Image 3

 Sample Image 4

文章来至近乎sns开发分享社区

加载中
返回顶部
顶部