Main.java Source code

Java tutorial

Introduction

Here is the source code for Main.java

Source

//package com.java2s;
//License from project: Apache License 

import android.view.View;

import android.view.animation.Animation;
import android.view.animation.Animation.AnimationListener;
import android.view.animation.CycleInterpolator;
import android.view.animation.TranslateAnimation;

public class Main {
    /**
     * translate the view.
     *
     * @param view           view to be translated
     * @param fromXDelta     Change in X coordinate to apply at the start of the
     *                       animation
     * @param toXDelta       Change in X coordinate to apply at the end of the
     *                       animation
     * @param fromYDelta     Change in Y coordinate to apply at the start of the
     *                       animation
     * @param toYDelta       Change in Y coordinate to apply at the end of the
     *                       animation
     * @param cycles         Repeats the animation for a specified number of cycles {@link CycleInterpolator}.
     * @param durationMillis Duration in milliseconds
     * @param isBanClick     whether view can click in animation
     */
    public static void translate(final View view, float fromXDelta, float toXDelta, float fromYDelta,
            float toYDelta, float cycles, long durationMillis, final boolean isBanClick) {
        TranslateAnimation translateAnimation = new TranslateAnimation(fromXDelta, toXDelta, fromYDelta, toYDelta);
        translateAnimation.setDuration(durationMillis);
        if (cycles > 0.0) {
            translateAnimation.setInterpolator(new CycleInterpolator(cycles));
        }
        translateAnimation.setAnimationListener(new AnimationListener() {
            @Override
            public void onAnimationStart(Animation animation) {
                if (isBanClick) {
                    view.setClickable(false);
                }
            }

            @Override
            public void onAnimationRepeat(Animation animation) {

            }

            @Override
            public void onAnimationEnd(Animation animation) {
                if (isBanClick) {
                    view.setClickable(true);
                }
            }
        });
        view.startAnimation(translateAnimation);
    }

    /**
     * translate the view.
     *
     * @param view           view to be translated
     * @param fromXDelta     Change in X coordinate to apply at the start of the
     *                       animation
     * @param toXDelta       Change in X coordinate to apply at the end of the
     *                       animation
     * @param fromYDelta     Change in Y coordinate to apply at the start of the
     *                       animation
     * @param toYDelta       Change in Y coordinate to apply at the end of the
     *                       animation
     * @param cycles         Repeats the animation for a specified number of cycles {@link CycleInterpolator}.
     * @param durationMillis Duration in milliseconds
     */
    public static void translate(final View view, float fromXDelta, float toXDelta, float fromYDelta,
            float toYDelta, float cycles, long durationMillis) {
        translate(view, fromXDelta, toXDelta, fromYDelta, toYDelta, cycles, durationMillis, false);
    }
}