@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); } } }); } }
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; } }
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; }
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); } }); }
/** * @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) { } }); }
/** * Slide out a view to the right or left of the list. After the animation has finished, the * view will be dismissed by calling {@link #performDismiss(android.view.View, android.view.View, int)}. * * @param view The view, that should be slided out. * @param childView The whole view of the list item. * @param position The item position of the item. * @param toRightSide Whether it should slide out to the right side. */ private void slideOutView(final View view, final View childView, final int position, boolean toRightSide) { // Only start new animation, if this view isn't already animated (too fast swiping bug) synchronized(mAnimationLock) { if(mAnimatedViews.contains(view)) { return; } ++mDismissAnimationRefCount; mAnimatedViews.add(view); } ViewPropertyAnimator.animate(view) .translationX(toRightSide ? mViewWidth : -mViewWidth) .alpha(0) .setDuration(mAnimationTime) .setListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { performDismiss(view, childView, position); } }); }
.translationX(moveTo) .setDuration(animationTime) .setListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) {
/** * Create choice animation * * @param view affected view * @param position list position */ private void generateChoiceAnimate(final View view, final int position) { animate(view) .translationX(0) .setDuration(animationTime) .setListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { swipeListView.resetScrolling(); resetCell(); } }); }
.alpha(alpha) .setDuration(animationTime) .setListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) {
.alpha(0) .setDuration(mAnimationTime) .setListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { .alpha(1) .setDuration(mAnimationTime) .setListener(null);
.alpha(1) .setDuration(mAnimationTime) .setListener(null); .alpha(0) .setDuration(mAnimationTime) .setListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { .alpha(1) .setDuration(mAnimationTime) .setListener(null);
.alpha(1) .setDuration(mAnimationTime) .setListener(null);
.translationX(thumbnailLeft) .translationY(thumbnailTop) .setListener(new Animator.AnimatorListener() { @Override public void onAnimationStart(Animator animation) {