Customizable bounce animation for any view like in Clash Royale app
Clone or download


Customizable bounce animation for any view updation

Android Arsenal

sample screenshot

Getting Started

In your build.gradle

dependencies {
    implementation 'hari.bounceview:bounceview:0.1.0'


Add animations to any views like so:
Button button = view.findViewById(;
Use BounceView with dialogs:
CustomDialog customDialog = new CustomDialog(getActivity());
//Add animation to custom dialog
BounceView.addAnimTo(customDialog);        //Call before showing the dialog;

PopupWindow popupWindow;
//Add animation to popup window
BounceView.addAnimTo(popupWindow);        //Call before showing the popup
popupWindow.showAtLocation(parentView, Gravity.CENTER, 0, 0);

AlertDialog dialog = builder.create();
//Add animation to alert dialog
BounceView.addAnimTo(dialog);        //Call before showing the dialog;
Some cool animations:
//Bounce animation
        .setScaleForPopOutAnim(1.1f, 1.1f);

//Horizontal flip animation
        .setScaleForPopOutAnim(1f, 0f);

//Vertical flip animation
        .setScaleForPopOutAnim(0f, 1f);

//Flicker animation
        .setScaleForPopOutAnim(0f, 0f);
Customize BounceView properties:
Button button = view.findViewById(;
        //Default push in scalex: 0.9f , scaley: 0.9f
        .setScaleForPushInAnim(BounceView.PUSH_IN_SCALE_X, BounceView.PUSH_IN_SCALE_Y)
        //Default pop out scalex: 1.1f, scaley: 1.1f
        .setScaleForPopOutAnim(BounceView.POP_OUT_SCALE_X, BounceView.POP_OUT_SCALE_Y)
        //Default push in anim duration: 100 (in milliseconds)
        //Default pop out anim duration: 100 (in milliseconds)
        //Default interpolator: AccelerateDecelerateInterpolator()


Inspired by and thanks to TheKhaeng's Push Down Animation Click


Copyright 2018 hariprasanths

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

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.