CircularProgressView

Additional

Language
Java
Version
N/A
Created
Aug 30, 2017
Updated
Nov 5, 2017
Owner
GuilhE
Contributors
codacy-badger
GuilhE
2
Activity
Badge
Generate
Download
Source code

Blurb

CircularProgressView:

A fancy CircularProgressView.

Version 1.x

  • November, 2017 - Progress thumb and animation callback
  • September, 2017 - CircularProgressView

Getting started

Include it into your project, for example, as a Gradle dependency:

implementation 'com.github.guilhe:circular-progress-view:${LATEST_VERSION}'

Sample usage

Check out the sample module where you can find a few examples of how to create it by xml or java.

Attributes accepted in xml:

<declare-styleable name="CircularProgressView">
    <attr name="max" format="integer"/>
    <attr name="shadow" format="boolean"/>
    <attr name="progressThumb" format="boolean"/>
    <attr name="startingAngle" format="integer"/>
    <attr name="progress" format="integer"/>
    <attr name="progressBarThickness" format="dimension"/>
    <attr name="progressBarColor" format="color"/>
    <attr name="backgroundColor" format="color"/>
</declare-styleable>

Example:

<com.github.guilhe.circularprogressview.CircularProgressView
                    android:layout_width="100dp"
                    android:layout_height="100dp"
                    app:progress="60"
                    app:progressBarThickness="10dp"
                    app:progressBarColor="@android:color/holo_purple"/>

To customize this View by code, these are the available methods to do so:

    public void setSize(int size) {}
    
    public void setStartingAngle(int angle) {}
    
    public int getStartingAngle() {}
    
    public void setMax(int max) {}
    
    public int getMax() {}
    
    public void setColor(int color) {}
    
    @RequiresApi(api = Build.VERSION_CODES.M)
    public void setColorResource(@ColorRes int resId) {}
    
    @RequiresApi(api = Build.VERSION_CODES.O)
    public void setColor(Color color) {}
    
    public void setProgressColor(int color) {}
    
    @RequiresApi(api = Build.VERSION_CODES.M)
    public void setProgressColorResource(@ColorRes int resId) {}
    
    @RequiresApi(api = Build.VERSION_CODES.O)
    public void setProgressColor(Color color) {}
    
    public int getProgressColor() {}
    
    public void setBackgroundColor(int color) {}
    
    @RequiresApi(api = Build.VERSION_CODES.M)
    public void setShadowColorResource(@ColorRes int resId) {}
    
    @RequiresApi(api = Build.VERSION_CODES.O)
    public void setBackgroundColor(Color color) {}
    
    public int getBackgroundColor() {}
    
    public void setShadowEnabled(boolean enable) {}
    
    public boolean isShadowEnabled() {}
    
    public void setProgressThumbEnabled(boolean enable) {}
    
    public boolean isProgressThumbEnabled() {}
    
    public void setProgressStrokeThickness(float thickness) {}
    
    public float getProgressStrokeThickness() {}
    
    public void setProgress(float progress) {}
    
    public void setProgress(float progress, boolean animate) {}
    
    public void setProgress(float progress, boolean animate, long duration) {}
           
    public float getProgress() {}
    
    public void resetProgress() {}
    
    public void resetProgress(boolean animate) {}
    
    public void resetProgress(boolean animate, long duration) {}
    
    public void setAnimationInterpolator(TimeInterpolator interpolator) {}
    
    public void setProgressAnimationCallback(OnProgressChangeAnimationCallback callback) {}

For more details checkout the sample app, javadocs or the code itself.

Sample

Binaries

Binaries and dependency information for Gradle, Maven, Ivy and others can be found at https://search.maven.org.

Dependencies

Bugs and Feedback

For bugs, questions and discussions please use the Github Issues.

LICENSE

Copyright (c) 2017-present, CircularProgressView Contributors.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.