An open API service indexing awesome lists of open source software.

https://github.com/MindorksOpenSource/RadialProgressBar

Radial ProgressBar inspired by Apple Watch OS. It is highly Customisable
https://github.com/MindorksOpenSource/RadialProgressBar

android applewatch circularprogress circularprogressbar circularview java kotlin progress progress-bar progressbar radial

Last synced: 3 months ago
JSON representation

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

Awesome Lists containing this project

README

          

![alt text](https://github.com/MindorksOpenSource/RadialProgressBar/blob/master/images/logo.jpg)

# Radial Progress Bar

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

### Preview of Radial Progress Bar


[![Mindorks](https://img.shields.io/badge/mindorks-opensource-blue.svg)](https://mindorks.com/open-source-projects)
[![Mindorks Community](https://img.shields.io/badge/join-community-blue.svg)](https://mindorks.com/join-community)
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)

## 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

```

```

##### 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()
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](https://mindorks.com/open-source-projects)

Contributor
* [Himanshu Singh](https://github.com/hi-manshu)
* [Akshay Nandwana](https://github.com/anandwana001)