/** * Lifting view * * @param view The animation target * @param baseRotation initial Rotation X in 3D space * @param fromY initial Y position of view * @param duration aniamtion duration * @param startDelay start delay before animation begin */ @Deprecated public static void liftingFromBottom(View view, float baseRotation, float fromY, int duration, int startDelay){ ViewHelper.setRotationX(view, baseRotation); ViewHelper.setTranslationY(view, fromY); ViewPropertyAnimator .animate(view) .setInterpolator(new AccelerateDecelerateInterpolator()) .setDuration(duration) .setStartDelay(startDelay) .rotationX(0) .translationY(0) .start(); }
private void setAnimation(View viewToAnimate, int position) { { ViewHelper.setAlpha(viewToAnimate, .0f); com.nineoldandroids.view.ViewPropertyAnimator.animate(viewToAnimate).alpha(1).setDuration(250).start(); lastPosition = position; } }
@TargetApi(11) private void translateWidgets(int deltaX, View... views) { for (final View v : views) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { v.setLayerType(View.LAYER_TYPE_HARDWARE, null); } ViewPropertyAnimator.animate(v).translationXBy(deltaX) .setDuration(ANIM_DURATION) .setListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { v.setLayerType(View.LAYER_TYPE_NONE, null); } } }); } }
@Override public void onScrollStateChanged(AbsListView absListView, int scrollState) { switch (scrollState) { case AbsListView.SCROLL_AXIS_NONE: floatHiding = false; floatShowing = false; ViewPropertyAnimator.animate(view).translationY(0).setDuration(300); break; } if (onScrollListener != null) onScrollListener.onScrollStateChanged(absListView, scrollState); }
private void showToolbar() { float headerTranslationY = ViewHelper.getTranslationY(mHeaderView); if (headerTranslationY != 0) { ViewPropertyAnimator.animate(mHeaderView).cancel(); ViewPropertyAnimator.animate(mHeaderView).translationY(0).setDuration(200).start(); } propagateToolbarState(true); }
/** * @param view * 所要移动的视图 * @param deltaX * 最终移动的距离 */ public void generateRevealAnimate(final View view, float deltaX) { int moveTo = 0; moveTo = (int) deltaX; animate(view).translationX(moveTo).setDuration(10) .setListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { } }); }
private void slideUp(int startDelay){ mReAttached = false; ViewPropertyAnimator.animate(mView).setStartDelay(startDelay).alpha(0f) .translationY(-mView.getHeight() + mTranslationY) .setInterpolator(new AccelerateInterpolator()) .setDuration(300) .setListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { if(!mReAttached){ cleanup(); } } }) .start(); mVisible = false; } }
ViewPropertyAnimator.animate(fabBtn).setInterpolator(mInterpolator) .setDuration(TRANSLATE_DURATION_MILLIS) .translationY(translationY); } else { ViewHelper.setTranslationY(fabBtn, translationY);
ViewPropertyAnimator.animate(mViewPager) .setDuration(duration) .setInterpolator(new AccelerateInterpolator()) .scaleX((float) thumbnailWidth / mViewPager.getWidth()) .scaleY((float) thumbnailHeight / mViewPager.getHeight()) .translationX(thumbnailLeft) .translationY(thumbnailTop) .setListener(new Animator.AnimatorListener() { @Override public void onAnimationStart(Animator animation) {
@Override public void run() { if (fadingOut) { animate(fadee).alpha(0).setDuration(PERIOD); fadee.setText(R.string.fading_out); } else { animate(fadee).alpha(1).setDuration(PERIOD); fadee.setText(R.string.coming_back); } fadingOut=!fadingOut; fadee.postDelayed(this, PERIOD); } }
@Override public void onScrollChanged(int scrollY, boolean firstScroll, boolean dragging) { if (dragging) { int toolbarHeight = mToolbarView.getHeight(); float currentHeaderTranslationY = ViewHelper.getTranslationY(mHeaderView); if (firstScroll) { if (-toolbarHeight < currentHeaderTranslationY) { mBaseTranslationY = scrollY; } } float headerTranslationY = ScrollUtils.getFloat(-(scrollY - mBaseTranslationY), -toolbarHeight, 0); ViewPropertyAnimator.animate(mHeaderView).cancel(); ViewHelper.setTranslationY(mHeaderView, headerTranslationY); } }
@Override public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,float velocityY) { // Usuário fez um gesto de swipe lateral try { if (e1.getX() - e2.getX() > swipeMinDistance && Math.abs(velocityX) > swipeThreasholdVelocity) { // Fez um gesto da direita para a esquerda text.setText("<<< Left"); animate(img).xBy(-100); } else if (e2.getX() - e1.getX() > swipeMinDistance && Math.abs(velocityX) > swipeThreasholdVelocity) { // Fez um gesto da esquerda para a direita text.setText("Right >>>"); animate(img).xBy(100); } } catch (Exception e) { } return false; } }
public void dismissCard(final View downView, final int position) { float viewWidth = downView.getMeasuredWidth(); ++mDismissAnimationRefCount; animate(downView) .translationX(viewWidth) .alpha(0) .setDuration(mAnimationTime) .setListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { performDismiss(downView, position); } }); }
private void showInternal(){ mView.show(); ViewHelper.setTranslationX(mView, (mParentView.getWidth() - mView.getWidth()) / 2); ViewHelper.setAlpha(mView, 0f); ViewHelper.setTranslationY(mView, -mView.getHeight() + mTranslationY); //mView.setVisibility(View.VISIBLE); ViewPropertyAnimator.animate(mView).alpha(1f).translationY(25 + mTranslationY) .setInterpolator(new DecelerateInterpolator()) .setListener(null) .setDuration(300).setStartDelay(0).start(); mVisible = true; }
private void hideToolbar() { float headerTranslationY = ViewHelper.getTranslationY(mHeaderView); int toolbarHeight = mHeaderView.getHeight() - mActionBarSize - mStatusSize - tabLayout.getHeight(); if (headerTranslationY != -toolbarHeight) { ViewPropertyAnimator.animate(mHeaderView).cancel(); ViewPropertyAnimator.animate(mHeaderView).translationY(-toolbarHeight).setDuration(200).start(); } propagateToolbarState(false); }
ViewPropertyAnimator.animate(img_float_btn) .setInterpolator(mInterpolator).setDuration(800) .translationY(translationY); } else { ViewHelper.setTranslationY(img_float_btn, translationY);
ViewPropertyAnimator.animate(mViewPager) .setDuration(duration) .scaleX(1) .scaleY(1) .translationX(0) .translationY(0) .setInterpolator(new DecelerateInterpolator());
@Override public void onScroll(AbsListView absListView, int firstVisibleItem, int visibleItemCount, int totalItemCount) { if (mLastFirstVisibleItem < firstVisibleItem) { if (floatShowing) floatShowing = false; if (!floatHiding) { ViewPropertyAnimator.animate(view).translationY(500).setDuration(300); floatHiding = true; } } if (mLastFirstVisibleItem > firstVisibleItem) { if (floatHiding) { floatHiding = false; } if (!floatShowing) { ViewPropertyAnimator.animate(view).translationY(0).setDuration(300); floatShowing = true; } } mLastFirstVisibleItem = firstVisibleItem; if (onScrollListener != null) onScrollListener.onScroll(absListView, firstVisibleItem, visibleItemCount, totalItemCount); } }
@Override public void onScrollChanged(int scrollY, boolean firstScroll, boolean dragging) { if (dragging) { int toolbarHeight = mHeaderView.getHeight() - mActionBarSize - mStatusSize - tabLayout.getHeight(); float currentHeaderTranslationY = ViewHelper.getTranslationY(mHeaderView); if (firstScroll) { if (-toolbarHeight < currentHeaderTranslationY) { mBaseTranslationY = scrollY; } } float headerTranslationY = ScrollUtils.getFloat(-(scrollY - mBaseTranslationY), -toolbarHeight, 0); ViewPropertyAnimator.animate(mHeaderView).cancel(); ViewHelper.setTranslationY(mHeaderView, headerTranslationY); } toolbar_bac.setImageResource(R.drawable.toolbar_background_black); float a = (float) scrollY / (ViewHelper.getScrollY(mHeaderView)); toolbar_bac.setAlpha(a); }