public static Animation getItemFlipAnimation(int width, int height){ final float degree = AnimationUtils.getFlipAnimationRandomDegree(); final int duration = AnimationUtils.getFlipAnimationRandomDuration(); Animation animation = new FlipAnimation(-degree, degree, width / 2, height / 2, duration, true); return animation; }
public static Animation getDefaultShowAnimation(int gravity){ switch (gravity){ case Gravity.TOP: return getDefaultShowAnimationFromTop(); case Gravity.BOTTOM: return getDefaultShowAnimationFromBottom(); } return getDefaultShowScaleAnimation(); }
public static RotateItemAnimation create(){ return new RotateItemAnimation(); } }
switch (position){ case 0: mTimoMenu.setItemAnimation(0, FlipItemAnimation.create()); mTimoMenu.setItemAnimation(1, FlipItemAnimation.create()); break; mTimoMenu.setItemAnimation(0, ScaleItemAnimation.create()); mTimoMenu.setItemAnimation(1, ScaleItemAnimation.create()); break; mTimoMenu.setItemAnimation(0, BombItemAnimation.create()); mTimoMenu.setItemAnimation(1, BombItemAnimation.create()); break; mTimoMenu.setItemAnimation(0, StandUpItemAnimation.create()); mTimoMenu.setItemAnimation(1, StandUpItemAnimation.create()); break; mTimoMenu.setItemAnimation(0, BounceItemAnimation.create()); mTimoMenu.setItemAnimation(1, BounceItemAnimation.create()); break; mTimoMenu.setItemAnimation(0, BounceInDownItemAnimation.create()); mTimoMenu.setItemAnimation(1, BounceInDownItemAnimation.create()); break; mTimoMenu.setItemAnimation(0, BounceInUpItemAnimation.create()); mTimoMenu.setItemAnimation(1, BounceInUpItemAnimation.create()); break;
public static Animation getDefaultDismissAnimation(int gravity){ switch (gravity){ case Gravity.TOP: return getDefaultDismissAnimationToTop(); case Gravity.BOTTOM: return getDefaultDismissAnimationToBottom(); } return getDefaultDismissScaleAnimation(); }
@Override public void initialize(int width, int height, int parentWidth, int parentHeight) { super.initialize(width, height, parentWidth, parentHeight); setDuration(duration) ; if(needToReduce) { setRepeatCount(5) ; setRepeatMode(Animation.REVERSE); } }
public static ObjectAnimator animate(Object target, String property, long delay, long duration, TypeEvaluator evaluator, int... values) { return animate(target, property, delay, duration, evaluator, null, values); }
public static FlipItemAnimation create(){ return new FlipItemAnimation(); } }
@Override public Animation getAnimation(TimoItemView itemView, int positionOfVisibleViews) { return AnimationUtils.getItemBombAnimation(positionOfVisibleViews * 100); }
public static BombItemAnimation create(){ return new BombItemAnimation(); } }
public static StandUpItemAnimation create(){ return new StandUpItemAnimation(); } }
public static BounceInUpItemAnimation create(){ return new BounceInUpItemAnimation(); } }
public static BounceInDownItemAnimation create(){ return new BounceInDownItemAnimation(); } }
@Override public Animation getAnimation(TimoItemView itemView, int positionOfVisibleViews) { return AnimationUtils.getItemScaleAnimation(0, 1, positionOfVisibleViews * 100); }
public static ScaleItemAnimation create(){ return new ScaleItemAnimation(); } }
public static BounceItemAnimation create(){ return new BounceItemAnimation(); } }
@Override public Animation getAnimation(TimoItemView itemView, int positionOfVisibleViews) { return AnimationUtils.getItemFlipAnimation(itemView.getWidth(), itemView.getHeight()); }
private void innerDismiss(boolean immediately){ if (!isShowing){ return; } isShowing = false; isImmediately = immediately; resetAnimations(); if (!immediately){ if (mDismissAnimation == null && useDefaultAnimation){ mDismissAnimation = AnimationUtils.getDefaultDismissAnimation(mGravity); } if (mDismissAnimation != null) { mAnimationCounter++; mDismissAnimation.setAnimationListener(mDismissAnimationListenerAdapter); mMenuView.startAnimation(mDismissAnimation); } } mAnimationCounter++; mBackgroundView.dismiss(immediately ? 0 : 300, mDismissAnimatorListenerAdapter); }
/** * Hide this background view * * @param duration The duration of show. * @param listenerAdapter The animation listener. * */ public void dismiss(long duration, AnimatorListenerAdapter listenerAdapter) { if (mAnimator != null){ mAnimator.removeAllListeners(); mAnimator.cancel(); } mAnimator = AnimationUtils.animate( this, "backgroundColor", 0, duration, new ArgbEvaluator(), listenerAdapter, mDimColor, Color.TRANSPARENT); } }
/** * Show this background view * * @param duration The duration of show. * @param listenerAdapter The animation listener. * */ public void show(long duration, AnimatorListenerAdapter listenerAdapter) { setVisibility(VISIBLE); if (mAnimator != null){ mAnimator.removeAllListeners(); mAnimator.cancel(); } mAnimator = AnimationUtils.animate( this, "backgroundColor", 0, duration, new ArgbEvaluator(), listenerAdapter, Color.TRANSPARENT, mDimColor); }