Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/roynx98/transition-button-android
Button for android with animations for transition and error states.
https://github.com/roynx98/transition-button-android
android animation button transition ui
Last synced: about 1 month ago
JSON representation
Button for android with animations for transition and error states.
- Host: GitHub
- URL: https://github.com/roynx98/transition-button-android
- Owner: roynx98
- Created: 2019-05-30T21:18:50.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2021-12-29T23:37:40.000Z (almost 3 years ago)
- Last Synced: 2024-08-04T22:10:40.413Z (5 months ago)
- Topics: android, animation, button, transition, ui
- Language: Java
- Homepage:
- Size: 1.67 MB
- Stars: 159
- Watchers: 5
- Forks: 20
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-android-ui - transition-button-android - button-android.gif" width="49%"> (Index)
README
# Transition Button Android
## Preview
- **Expand animation**:![](expand.gif)
- **Shake animation**:
![](shake.gif)
## Installation
### Gradle
```groovy
dependencies {
implementation 'com.royrodriguez:transitionbutton:0.2.0'
}
```## How to use
### Step 1
Add the TransitonButton to your layout:```xml
app:defaultColor="@color/colorAppAccent"
app:loaderColor="@android:color/white"
android:textColor="@android:color/white" />
```### Step 2
Setup your code:```java
public class MainActivity extends AppCompatActivity {private TransitionButton transitionButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
transitionButton = findViewById(R.id.transition_button);
transitionButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Start the loading animation when the user tap the button
transitionButton.startAnimation();// Do your networking task or background work here.
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
boolean isSuccessful = true;
// Choose a stop animation if your call was succesful or not
if (isSuccessful) {
transitionButton.stopAnimation(TransitionButton.StopAnimationStyle.EXPAND, new TransitionButton.OnAnimationStopEndListener() {
@Override
public void onAnimationStopEnd() {
Intent intent = new Intent(getBaseContext(), NewActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
startActivity(intent);
}
});
} else {
transitionButton.stopAnimation(TransitionButton.StopAnimationStyle.SHAKE, null);
}
}
}, 2000);
}
});
}}
```## Thanks
- [TransitionButton](https://github.com/AladinWay/TransitionButton)
## Author
Roy Rodriguez [[email protected]]([email protected])