SkillAgentSearch skills...

RadialProgressBar

Radial ProgressBar inspired by Apple Watch OS. It is highly Customisable

Install / Use

/learn @MindorksOpenSource/RadialProgressBar

README

alt text

Radial Progress Bar

Radial ProgressBar inspired by Apple Watch OS. It is highly Customisable <br/>

Preview of Radial Progress Bar

<img src="https://github.com/MindorksOpenSource/RadialProgressBar/blob/master/images/slow.gif" width ="300" height ="300"/> <img src="https://images-na.ssl-images-amazon.com/images/I/51FRMHVcPcL._SX425_.jpg" width ="200" height ="200"/>

Mindorks Mindorks Community License

Getting Started

Step 1. Add the JitPack repository to your Add it in your root build.gradle at the end of repositories:
allprojects {
    repositories {
   	   maven { url 'https://jitpack.io' }
    }
}
Step 2. Add the dependency
dependencies {
	        implementation 'com.github.MindorksOpenSource:RadialProgressBar:v1.3'
	}
Step3. To use this in XML File, use
  <com.mindorks.RadialProgressBar
            android:layout_width="200dp"
            android:layout_height="200dp"
            android:id="@+id/progress_view"
            app:useRoundedCorner="true"
            app:innerMaxProgress="100"
            app:outerMaxProgress="100"
            app:centerMaxProgress="100"
            app:isAnimationOn="true"
            app:innerProgress="50"
            app:centerProgress="50"
	    app:hasTwoProgressView="false"
            app:hasOneProgressView="false"
   />

Step 4. Link the XML in Activity File using,
val radialProgressBar = findViewById(R.id.progress_view)

or

RadialProgressBar rpb = findViewById(R.id.progress_view) //if using Java

thats it and how you can use the RadialProgressView in your project.

To Customise it according to your need you can use,

| Feature | XML | Activity (Java/Koltin) |Default| | :------------- |:------------- | :----- |:---- |Set Start Angle OuterView|app:outerProgressStartAngle="angle"|rpb.setStartAngleOuterView(angle)|270| |Set Start Angle CenterView|app:centerProgressStartAngle="angle"|rpb.setStartAngleCenterView(angle)|270| |Set Start Angle InnerView|app:innerProgressStartAngle="angle"|rpb.setStartAngleInnerView(angle)|270| |Set EmptyProgressColorOuterView|app:outerEmptyProgressColor="color"|rpb.setEmptyProgressColorOuterView(color)|#F5F5F5| |Set EmptyProgressColorCenterView|app:centerEmptyProgressColor="color"|rpb.setEmptyProgressColorCenterView(color)|#F5F5F5| |Set EmptyProgressColorInnerView|app:innerEmptyProgressColor="color"|rpb.setEmptyProgressColorInnerView(color)|#F5F5F5| |Set MaxProgressOuterView|app:outerMaxProgress="Integer"|rpb.setMaxProgressOuterView(Integer)|100| |Set MaxProgressCenterView|app:centerMaxProgress="Integer"|rpb.setMaxProgressCenterView(Integer)|100| |Set MaxProgressInnerView|app:innerMaxProgress="Integer"|rpb.setMaxProgressInnerView(Integer)|100| |Set OuterProgress|app:outerProgress="Integer"|rpb.setOuterProgress(Integer)|0| |Set CenterProgress|app:centerProgress="Integer"|rpb.setCenterProgress(Integer)|0| |Set InnerProgress|app:innerProgress="Integer"|rpb.setInnerProgress(Integer)|0| |Set OuterProgressColor|app:outerProgressColor="color"|rpb.setOuterProgressColor(listOfColor)|#f52e67| |Set CenterProgressColor|app:centerProgressColor="color"|rpb.setCenterProgressColor(listOfColor)|#c2ff07| |Set InnerProgressColor|app:innerProgressColor="color"|rpb.setInnerProgressColor(listOfColor)|#0dffab| |Set Elevation|app:hasElevation="true/false"|rpb.hasElevation(true/false)|false| |Set EmptyProgressBar|app:hasEmptyProgressBar="true/false"|rpb.hasEmptyProgressBar(true/false)|false| |Set Animation|app:isAnimationOn="true/false"|rpb.setAnimationInProgressView(true/false)|true| |Set RoundedCorner|app:useRoundedCorners="true/false"|rpb.useRoundedCorners(true/false)|true| |Set ProgressValues|----|rpb.setProgressValues(int,int,int)|----| |Set MaxProgressValues|----|rpb.setMaxProgressValues(int,int,int)|----| |Set Only OuterProgress|app:hasOneProgressView="true/false"|rpb.setOneProgressView(true/false)|false| |Set Only Outer and CenterProgress|app:hasTwoProgressView="true/false"|rpb.setTwoProgressView(true/false)|false| |Set Circle Thickness***|app:circleThickness="float"|rpb.setCircleThickness(float)|1f| |Set Circle Padding|app:circlePadding="float"|rpb.setCirclePadding(float)|10f|

**angle = 0/90/180/270

***circleThickness between 0f to 1f

You can also get value related to the RadialProgressView,

| Feature | Value | | :------------- |:------------- | |Get Outer Progress|rpb.getOuterProgress()| |Get Inner Progress|rpb.getInnerProgress()| |Get Center Progress|rpb.getCenterProgress()| |Get Start Angle OuterProgress|rpb.getStartAngleOuterView()| |Get Start Angle InnerProgress|rpb.getStartAngleInnerView()| |Get Start Angle CenterProgress|rpb.getStartAngleCenterView()| |Get Start Angle OuterProgress|rpb.getMaxProgressOuterView()| |Get Start Angle InnerProgress|rpb.getMaxProgressInnerView()| |Get Start Angle CenterProgress|rpb.getMaxProgressCenterView()|

For Gradient Shade,

 val outerColor = ArrayList<Int>()
        outerColor.add(Color.parseColor("#fbab00"))
        outerColor.add(Color.parseColor("#f5004b"))
        progress.setOuterProgressColor(outerColor)
        

Todo

- If using One progressbar, user can also have an option to display the value in text

If this library helps you in anyway, show your love :heart: by putting a :star: on this project :v:

Check out Mindorks awesome open source projects here

Contributor

View on GitHub
GitHub Stars167
CategoryDevelopment
Updated1mo ago
Forks23

Languages

Kotlin

Security Score

100/100

Audited on Feb 23, 2026

No findings