Skip to content

n-droidev/StepsCircularProgressBar

Repository files navigation

StepsCircularProgressBar

Platform API Apache 2.0

This is an Android project allowing CircularProgressBar to be segmented as steps. It consists of parts as separated arcs.

Two colored progressbar Colorful progressbar 1 Colorful progressbar 2

Usage

To use StepsCircularProgressBar you must add it as a dependency in your Gradle build:

Step 1. Add the JitPack repository to your build file Add it in your root build.gradle (or settings.gradle) at the end of repositories:

// If you use Groovy for Gradle
allprojects {
	repositories {
		...
		maven { url "https://jitpack.io" }
	}
}
// If you use Kotlin DSL for Gradle
allprojects {
	repositories {
		...
		maven { setUrl("https://jitpack.io") }
	}
}

Step 2. Add the dependency

// Groovy
implementation 'com.github.n-droidev:StepsCircularProgressBar:2.0'
// Kotlin DSL
implementation("com.github.n-droidev:StepsCircularProgressBar:2.0")

XML

<n_droidev.progressbar.StepsCircularProgressBar
      android:id="@+id/stepsProgress"
      android:layout_width="0dp"
      android:layout_height="wrap_content"
      android:layout_margin="30dp"
      app:layout_constraintBottom_toBottomOf="parent"
      app:layout_constraintEnd_toEndOf="parent"
      app:layout_constraintStart_toStartOf="parent"
      app:layout_constraintTop_toTopOf="parent"
      app:scp_doneStepColor="#AA354F"
      app:scp_gapBetweenSteps="10dp"
      app:scp_stepCornerType="Round"
      app:scp_stepExtraRotationAngle="-2.5"
      app:scp_stepThickness="5dp"
      app:scp_stepsCount="5"
      app:scp_undoneStepColor="#88AA35FF" />

Kotlin

        val colors = intArrayOf(
            Color.RED,
            Color.GREEN,
            Color.BLUE,
            Color.LTGRAY,
            Color.BLACK,
        )

        with(binding.stepsProgress) {
            setData(5, dynamicStepColors = colors)
            setTotalStepsCount(7)
            setDoneStepsCount(4)
            setGapBetweenEachStep(30f.dp)
            setStepDoneColor(Color.BLUE)
            setStepUndoneColor(Color.BLACK)
            setStepThickness(20f.dp)
            setStartAngleExtra(20f)
            setStepStrokeType(Paint.Cap.ROUND)
        }

Licence

StepsCircularProgressBar by [Samir Alakbarov] is licensed under a Apache License 2.0.

About

Segmented Circular Progres Bar

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages