Back to project page android-utils.
The source code is released under:
Apache License
If you think the Android project android-utils listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
/** * Copyright 2014 Zhenguo Jin (jinzhenguo1990@gmail.com) */*ww w. j a va 2 s.co m*/ * 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. */ package com.worthed.util; import android.view.animation.AlphaAnimation; import android.view.animation.Animation; import android.view.animation.Animation.AnimationListener; import android.view.animation.RotateAnimation; import android.view.animation.ScaleAnimation; /** * ????? * * @author zhenguo */ public class AnimationUtils { /** * ????????? */ public static final long DEFAULT_ANIMATION_DURATION = 400; /** * ?????????? * * @param fromDegrees ???? * @param toDegrees ?????? * @param pivotXType ?????X????????? * @param pivotXValue ?????X????? * @param pivotYType ?????Y????????? * @param pivotYValue ?????Y????? * @param durationMillis ????? * @param animationListener ??????? * @return ?????? */ public static RotateAnimation getRotateAnimation(float fromDegrees, float toDegrees, int pivotXType, float pivotXValue, int pivotYType, float pivotYValue, long durationMillis, AnimationListener animationListener) { RotateAnimation rotateAnimation = new RotateAnimation(fromDegrees, toDegrees, pivotXType, pivotXValue, pivotYType, pivotYValue); rotateAnimation.setDuration(durationMillis); if (animationListener != null) { rotateAnimation.setAnimationListener(animationListener); } return rotateAnimation; } /** * ?????????????????????? * * @param durationMillis ??????? * @param animationListener ??????? * @return ?????????????? */ public static RotateAnimation getRotateAnimationByCenter(long durationMillis, AnimationListener animationListener) { return getRotateAnimation(0f, 359f, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f, durationMillis, animationListener); } /** * ?????????????????? * * @param duration ??????? * @return ?????????????? */ public static RotateAnimation getRotateAnimationByCenter(long duration) { return getRotateAnimationByCenter(duration, null); } /** * ?????????????????????? * * @param animationListener ??????? * @return ?????????????? */ public static RotateAnimation getRotateAnimationByCenter(AnimationListener animationListener) { return getRotateAnimationByCenter(DEFAULT_ANIMATION_DURATION, animationListener); } /** * ?????????????????? * * @return ???????????????????????DEFAULT_ANIMATION_DURATION */ public static RotateAnimation getRotateAnimationByCenter() { return getRotateAnimationByCenter(DEFAULT_ANIMATION_DURATION, null); } /** * ????????????????? * * @param fromAlpha ???????? * @param toAlpha ??????????? * @param durationMillis ????? * @param animationListener ??????? * @return ????????????? */ public static AlphaAnimation getAlphaAnimation(float fromAlpha, float toAlpha, long durationMillis, AnimationListener animationListener) { AlphaAnimation alphaAnimation = new AlphaAnimation(fromAlpha, toAlpha); alphaAnimation.setDuration(durationMillis); if (animationListener != null) { alphaAnimation.setAnimationListener(animationListener); } return alphaAnimation; } /** * ????????????????? * * @param fromAlpha ???????? * @param toAlpha ??????????? * @param durationMillis ????? * @return ????????????? */ public static AlphaAnimation getAlphaAnimation(float fromAlpha, float toAlpha, long durationMillis) { return getAlphaAnimation(fromAlpha, toAlpha, durationMillis, null); } /** * ????????????????? * * @param fromAlpha ???????? * @param toAlpha ??????????? * @param animationListener ??????? * @return ??????????????????????DEFAULT_ANIMATION_DURATION */ public static AlphaAnimation getAlphaAnimation(float fromAlpha, float toAlpha, AnimationListener animationListener) { return getAlphaAnimation(fromAlpha, toAlpha, DEFAULT_ANIMATION_DURATION, animationListener); } /** * ????????????????? * * @param fromAlpha ???????? * @param toAlpha ??????????? * @return ??????????????????????DEFAULT_ANIMATION_DURATION */ public static AlphaAnimation getAlphaAnimation(float fromAlpha, float toAlpha) { return getAlphaAnimation(fromAlpha, toAlpha, DEFAULT_ANIMATION_DURATION, null); } /** * ?????????????????????????????????? * * @param durationMillis ????? * @param animationListener ??????? * @return ?????????????????????????????? */ public static AlphaAnimation getHiddenAlphaAnimation(long durationMillis, AnimationListener animationListener) { return getAlphaAnimation(1.0f, 0.0f, durationMillis, animationListener); } /** * ?????????????????????????????????? * * @param durationMillis ????? * @return ?????????????????????????????? */ public static AlphaAnimation getHiddenAlphaAnimation(long durationMillis) { return getHiddenAlphaAnimation(durationMillis, null); } /** * ?????????????????????????????????? * * @param animationListener ??????? * @return ???????????????????????????????????????DEFAULT_ANIMATION_DURATION */ public static AlphaAnimation getHiddenAlphaAnimation(AnimationListener animationListener) { return getHiddenAlphaAnimation(DEFAULT_ANIMATION_DURATION, animationListener); } /** * ?????????????????????????????????? * * @return ???????????????????????????????????????DEFAULT_ANIMATION_DURATION */ public static AlphaAnimation getHiddenAlphaAnimation() { return getHiddenAlphaAnimation(DEFAULT_ANIMATION_DURATION, null); } /** * ?????????????????????????????????? * * @param durationMillis ????? * @param animationListener ??????? * @return ?????????????????????????????? */ public static AlphaAnimation getShowAlphaAnimation(long durationMillis, AnimationListener animationListener) { return getAlphaAnimation(0.0f, 1.0f, durationMillis, animationListener); } /** * ?????????????????????????????????? * * @param durationMillis ????? * @return ?????????????????????????????? */ public static AlphaAnimation getShowAlphaAnimation(long durationMillis) { return getAlphaAnimation(0.0f, 1.0f, durationMillis, null); } /** * ?????????????????????????????????? * * @param animationListener ??????? * @return ???????????????????????????????????????DEFAULT_ANIMATION_DURATION */ public static AlphaAnimation getShowAlphaAnimation(AnimationListener animationListener) { return getAlphaAnimation(0.0f, 1.0f, DEFAULT_ANIMATION_DURATION, animationListener); } /** * ?????????????????????????????????? * * @return ???????????????????????????????????????DEFAULT_ANIMATION_DURATION */ public static AlphaAnimation getShowAlphaAnimation() { return getAlphaAnimation(0.0f, 1.0f, DEFAULT_ANIMATION_DURATION, null); } /** * ??????????? * * @param durationMillis * @param animationListener * @return */ public static ScaleAnimation getLessenScaleAnimation(long durationMillis, AnimationListener animationListener) { ScaleAnimation scaleAnimation = new ScaleAnimation(1.0f, 0.0f, 1.0f, 0.0f, ScaleAnimation.RELATIVE_TO_SELF, ScaleAnimation.RELATIVE_TO_SELF); scaleAnimation.setDuration(durationMillis); scaleAnimation.setAnimationListener(animationListener); return scaleAnimation; } /** * ??????????? * * @param durationMillis * @return */ public static ScaleAnimation getLessenScaleAnimation(long durationMillis) { return getLessenScaleAnimation(DEFAULT_ANIMATION_DURATION); } /** * ??????????? * * @param animationListener * @return */ public static ScaleAnimation getLessenScaleAnimation(AnimationListener animationListener) { return getLessenScaleAnimation(DEFAULT_ANIMATION_DURATION, null); } /** * ?????????? * * @param durationMillis * @param animationListener * @return */ public static ScaleAnimation getAmplificationAnimation(long durationMillis, AnimationListener animationListener) { ScaleAnimation scaleAnimation = new ScaleAnimation(0.0f, 1.0f, 0.0f, 1.0f, ScaleAnimation.RELATIVE_TO_SELF, ScaleAnimation.RELATIVE_TO_SELF); scaleAnimation.setDuration(durationMillis); scaleAnimation.setAnimationListener(animationListener); return scaleAnimation; } /** * ?????????? * * @param durationMillis * @return */ public static ScaleAnimation getAmplificationAnimation(long durationMillis) { return getLessenScaleAnimation(DEFAULT_ANIMATION_DURATION); } /** * ?????????? * * @param animationListener * @return */ public static ScaleAnimation getAmplificationAnimation(AnimationListener animationListener) { return getLessenScaleAnimation(DEFAULT_ANIMATION_DURATION, null); } }