Skip to content

StevenDXC/DxLoadingButton

Folders and files

NameName
Last commit message
Last commit date

Latest commit

098cd50 · May 21, 2020

History

85 Commits
May 21, 2020
May 21, 2020
May 21, 2020
May 21, 2020
Dec 17, 2017
May 21, 2020
May 21, 2020
May 21, 2020
May 21, 2020
Oct 13, 2016
May 21, 2020
May 21, 2020

Repository files navigation

DxLoadingButton

android button to loading view with animation,and load successful/failed animation

API Codacy Badge

Demo:

image

with activity transition animation demo:

image

Usage:

layout:

<com.dx.dxloadingbutton.lib.LoadingButton
     android:id="@+id/loading_btn"
     android:layout_gravity="center"
     android:layout_width="228dp"
     android:layout_height="wrap_content"
     app:lb_resetAfterFailed="true"
     app:lb_btnRippleColor="#000000"
     app:lb_btnDisabledColor="#cccccc"
     app:lb_disabledTextColor="#999999"
     app:lb_cornerRadius="32"
     app:lb_rippleEnable="true"					  
     app:lb_btnText="@string/button_text"
/>

code:

LoadingButton lb = (LoadingButton)findViewById(R.id.loading_btn);
lb.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                lb.startLoading(); //start loading 
            }
});

show successful animation:

 lb.loadingSuccessful();

show failed animation:

 lb.loadingFailed();

cancel loading:

 lb.cancelLoading();

reset:

 lb.reset();

enable:

 lb.setEnable(true/false); 
  • notice: lb_btnDisabledColor & lb_disabledTextColor only display while LoadingButton is normal button state, LoadingButton is playing animation or other state will display normal color

image

backgroundShader:

lb.setBackgroundShader(new LinearGradient(0f,0f,1000f,100f, 0xAAE53935, 0xAAFF5722, Shader.TileMode.CLAMP));

cornerRadius:

lb.setCornerRadius(32f)

dependency

Add it in your root build.gradle at the end of repositories:

allprojects {
    repositories {
	...
	maven { url 'https://jitpack.io' }
    }
}

add dependency:

dependencies {
    compile 'com.github.StevenDXC:DxLoadingButton:2.4'
}