android-square-progressbar

Additional

Language
Java
Version
1.6.0 (Jul 10, 2015)
Created
May 5, 2013
Updated
Mar 30, 2018
Owner
Yannick Signer (mrwonderman)
Contributors
Thiago Rocha (thiagokimo)
Yannick Signer (mrwonderman)
codeZfox
3
Activity
Badge
Generate
Download
Source code
APK file

Promotion

android-square-progressbar

First things first

This library is setup to work with the Android Studio and Gradle. If you're using the Eclipse environment then check out the legacy repository here: android-square-progressbar-legacy.

You can find my blog post about the newest version here: halcyon.ch - android-square-progressbar v.1.6.0, also check out the post about the previous major 1.5.0 version here.

The example application is available at the play store:

General idea

Sometimes you don't have enough space in your layout to display a wide progressbar. So this library gives you a complete new possibility to display a progress. You can simply show a progressbar around an image. And this progressbar can be configured in a lot of different ways, like colour, outline, display of the percentage and so on.

Examples

Here are some examples of how these progressbars could look like:

normal / default rounded corners show percent indeterminate
setRoundedCorners(true) showProgress(true) drawOutline(true)
setOpacity(true) setIndeterminate(true)

There are some further examples available here (with code) : Examples

How to use it? / How to install? / How to contribute?

Check the wiki for more information about how to use, how to install or how to contribute.

If you have questions about the code or if you need some help, you can try the Gitter-Group.

Usage

Gradle

This library now works with gradle and will soon be available on the central maven repository. For the moment its on jCenter at Bintray. Just add the following repository to your root build.gradle:

allprojects {
    repositories {
        jcenter()
        maven { url "https://jcenter.bintray.com" }
    }
}

Then in your app build.gradle:

dependencies {
    // other repos ...
    implementation 'ch.halcyon:squareprogressbar:1.6.4'
}

Code

After adding the gradle depedency from above you can go to your xml layout and add the following code for a squareprogressbar:

<ch.halcyon.squareprogressbar.SquareProgressBar
    android:id="@+id/sprogressbar"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:paddingTop="20dp" >
</ch.halcyon.squareprogressbar.SquareProgressBar>

To set some basic settings use the following java-code:

SquareProgressBar squareProgressBar = findViewById(R.id.sprogressbar);
squareProgressBar.setImage(R.drawable.example);
squareProgressBar.setProgress(50.0);

Now you can make the squareprogressbar as fancy as you like. Check the usage page for all the different possiblities.