ProgressLayout

Additional

Language
Java
Version
N/A
Created
Sep 16, 2015
Updated
Jun 2, 2017 (Retired)
Owner
Mert Şimşek (iammert)
Contributors
Pedro Paulo Amorim (ppamorim)
Mert Şimşek (iammert)
2
Activity
Badge
Generate
Download
Source code

ProgressLayout

Custom Progress Layout for Android

Here is the youtube link

XML Definition

 <co.mobiwise.library.ProgressLayout
        android:id="@+id/progressLayout"
        android:layout_width="match_parent"
        android:layout_height="100dp"
        app:maxProgress="100"
        app:autoProgress="true"
        app:emptyColor="#152430"
        android:layout_centerVertical="true"/>

Attributes to use

<co.mobiwise.library.ProgressLayout
...
app:maxProgress="100"
app:autoProgress="true"
app:emptyColor="#152430"
app:loadedColor="#11FFFFFF"
...
/>

Use

ProgressLayout progressLayout = (ProgressLayout) findViewById(R.id.progressLayout);
//Start it
progressLayout.start();
//pause it
progressLayout.stop();
//cancel it
progressLayout.cancel();

Methods

progressLayout.setMaxProgress(120);
progressLayout.setCurrentProgress(64);
boolean isPlaying = progressLayout.isPlaying();
//If you dont want to auto progress and handle it yourself
progressLayout.setAutoProgress(false);

Listener

progressLayout.setProgressLayoutListener(new ProgressLayout.ProgressLayoutListener() {
    @Override
    public void onProgressCompleted() {
        //TODO completed
    }

    @Override
    public void onProgressChanged(int seconds) {
        //TODO progress seconds changed.
    }
});

Gradle

Add it to your project build.gradle

 repositories {
     // ...
     maven { url "https://jitpack.io" }
 }

Add it to your app module build gradle.

dependencies {
     compile 'com.github.iammert:ProgressLayout:a2ac196500'
}

Design

I inspired from this design which is designed by Anatoly Nesterov

License

Copyright 2015 Mert Şimşek.

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.