类android.support.v4.view.ViewPropertyAnimatorCompat源码实例Demo

下面列出了怎么用android.support.v4.view.ViewPropertyAnimatorCompat的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: styT   文件: MaterialRefreshLayout.java
public void finishRefreshing() {
    if (mChildView != null) {
        ViewPropertyAnimatorCompat viewPropertyAnimatorCompat = ViewCompat.animate(mChildView);
        viewPropertyAnimatorCompat.setDuration(200);
        viewPropertyAnimatorCompat.y(ViewCompat.getTranslationY(mChildView));
        viewPropertyAnimatorCompat.translationY(0);
        viewPropertyAnimatorCompat.setInterpolator(new DecelerateInterpolator());
        viewPropertyAnimatorCompat.start();

        if (mMaterialHeaderView != null) {
            mMaterialHeaderView.onComlete(MaterialRefreshLayout.this);
        } else if (mSunLayout != null) {
            mSunLayout.onComlete(MaterialRefreshLayout.this);
        }

        if (refreshListener != null) {
            refreshListener.onfinish();
        }
    }
    isRefreshing = false;
    progressValue = 0;
}
 
源代码2 项目: SprintNBA   文件: MaterialRefreshLayout.java
public void finishRefreshing() {
    if (mChildView != null) {
        ViewPropertyAnimatorCompat viewPropertyAnimatorCompat = ViewCompat.animate(mChildView);
        viewPropertyAnimatorCompat.setDuration(200);
        viewPropertyAnimatorCompat.y(ViewCompat.getTranslationY(mChildView));
        viewPropertyAnimatorCompat.translationY(0);
        viewPropertyAnimatorCompat.setInterpolator(new DecelerateInterpolator());
        viewPropertyAnimatorCompat.start();

        if (mMaterialHeaderView != null) {
            mMaterialHeaderView.onComplete(MaterialRefreshLayout.this);
        } else if (mSunLayout != null) {
            mSunLayout.onComplete(MaterialRefreshLayout.this);
        }

        if (refreshListener != null) {
            refreshListener.onfinish();
        }
    }
    isRefreshing = false;
    progressValue = 0;
}
 
源代码3 项目: RxAnimations   文件: AnimateOnSubscribe.java
@Override
public void call(final CompletableSubscriber completableSubscriber) {
    final View view = viewWeakRef.get();
    if (view == null) {
        completableSubscriber.onCompleted();
        return;
    }

    final ViewPropertyAnimatorCompat animator = ViewCompat.animate(view);
    completableSubscriber.onSubscribe(createClearSubscription(animator));

    if (preTransformActions != null) {
        applyActions(preTransformActions, animator);
        animator.setDuration(NONE).setStartDelay(NONE)
                .withEndAction(() -> runAnimation(completableSubscriber, animator))
                .start();
    } else {
        runAnimation(completableSubscriber, animator);
    }
}
 
源代码4 项目: BitkyShop   文件: MaterialRefreshLayout.java
public void finishRefreshing() {
    if (mChildView != null) {
        ViewPropertyAnimatorCompat viewPropertyAnimatorCompat = ViewCompat.animate(mChildView);
        viewPropertyAnimatorCompat.setDuration(200);
        viewPropertyAnimatorCompat.y(ViewCompat.getTranslationY(mChildView));
        viewPropertyAnimatorCompat.translationY(0);
        viewPropertyAnimatorCompat.setInterpolator(new DecelerateInterpolator());
        viewPropertyAnimatorCompat.start();

        if (mMaterialHeaderView != null) {
            mMaterialHeaderView.onComlete(MaterialRefreshLayout.this);
        } else if (mSunLayout != null) {
            mSunLayout.onComlete(MaterialRefreshLayout.this);
        }

        if (refreshListener != null) {
            refreshListener.onfinish();
        }
    }
    isRefreshing = false;
    progressValue = 0;
}
 
源代码5 项目: MousePaint   文件: MaterialRefreshLayout.java
public void finishRefreshing() {
    if (mChildView != null) {
        ViewPropertyAnimatorCompat viewPropertyAnimatorCompat = ViewCompat.animate(mChildView);
        viewPropertyAnimatorCompat.setDuration(200);
        viewPropertyAnimatorCompat.y(ViewCompat.getTranslationY(mChildView));
        viewPropertyAnimatorCompat.translationY(0);
        viewPropertyAnimatorCompat.setInterpolator(new DecelerateInterpolator());
        viewPropertyAnimatorCompat.start();

        if (materialHeadView != null) {
            materialHeadView.onComlete(MaterialRefreshLayout.this);
        }

        if (refreshListener != null) {
            refreshListener.onfinish();
        }
    }
    isRefreshing = false;
    progressValue = 0;
    setProgressValue(0);
}
 
源代码6 项目: RecyclerViewLib   文件: PendingItemAnimator.java
/** Preform your animation. You do not need to override this in most cases cause the default is pretty good.
 * Listeners will be overridden **/
protected ViewPropertyAnimatorCompat animateMoveImpl(final ViewHolder holder, int fromX, int fromY, int toX, int toY) {
    final View view = holder.itemView;
    final int deltaX = toX - fromX;
    final int deltaY = toY - fromY;
    ViewCompat.animate(view).cancel();
    if (deltaX != 0) {
        ViewCompat.animate(view).translationX(0);
    }
    if (deltaY != 0) {
        ViewCompat.animate(view).translationY(0);
    }
    // TODO: make EndActions end listeners instead, since end actions aren't called when
    // vpas are canceled (and can't end them. why?)
    // need listener functionality in VPACompat for this. Ick.
    return ViewCompat.animate(view).setInterpolator(null).setDuration(getMoveDuration());
}
 
源代码7 项目: styT   文件: MaterialRefreshLayout.java
public void createAnimatorTranslationY(final View v, final float h, final FrameLayout fl) {
    ViewPropertyAnimatorCompat viewPropertyAnimatorCompat = ViewCompat.animate(v);
    viewPropertyAnimatorCompat.setDuration(250);
    viewPropertyAnimatorCompat.setInterpolator(new DecelerateInterpolator());
    viewPropertyAnimatorCompat.translationY(h);
    viewPropertyAnimatorCompat.start();
    viewPropertyAnimatorCompat.setUpdateListener(new ViewPropertyAnimatorUpdateListener() {
        @Override
        public void onAnimationUpdate(View view) {
            float height = ViewCompat.getTranslationY(v);
            fl.getLayoutParams().height = (int) height;
            fl.requestLayout();
        }
    });
}
 
源代码8 项目: JD-Test   文件: BadgeItem.java
/**
 * @param animate whether to animate the change
 * @return this, to allow builder pattern
 */
public BadgeItem show(boolean animate) {
    mIsHidden = false;
    if (isWeakReferenceValid()) {
        TextView textView = mTextViewRef.get();
        if (animate) {
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
                textView.setScaleX(0);
                textView.setScaleY(0);
            }
            textView.setVisibility(View.VISIBLE);
            ViewPropertyAnimatorCompat animatorCompat = ViewCompat.animate(textView);
            animatorCompat.cancel();
            animatorCompat.setDuration(mAnimationDuration);
            animatorCompat.scaleX(1).scaleY(1);
            animatorCompat.setListener(null);
            animatorCompat.start();
        } else {
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
                textView.setScaleX(1);
                textView.setScaleY(1);
            }
            textView.setVisibility(View.VISIBLE);
        }
    }
    return this;
}
 
源代码9 项目: BottomBar   文件: BottomBarTab.java
private void animateTitle(int padding, float scale, float alpha) {
    if (type == Type.TABLET && isTitleless) {
        return;
    }

    setTopPaddingAnimated(iconView.getPaddingTop(), padding);

    ViewPropertyAnimatorCompat titleAnimator = ViewCompat.animate(titleView)
            .setDuration(ANIMATION_DURATION)
            .scaleX(scale)
            .scaleY(scale);
    titleAnimator.alpha(alpha);
    titleAnimator.start();
}
 
private void animate() {
    ImageView logoImageView = (ImageView) findViewById(R.id.img_logo);
    ViewGroup container = (ViewGroup) findViewById(R.id.container);

    ViewCompat.animate(logoImageView)
        .translationY(-250)
        .setStartDelay(STARTUP_DELAY)
        .setDuration(ANIM_ITEM_DURATION).setInterpolator(
            new DecelerateInterpolator(1.2f)).start();

    for (int i = 0; i < container.getChildCount(); i++) {
        View v = container.getChildAt(i);
        ViewPropertyAnimatorCompat viewAnimator;

        if (!(v instanceof Button)) {
            viewAnimator = ViewCompat.animate(v)
                    .translationY(50).alpha(1)
                    .setStartDelay((ITEM_DELAY * i) + 500)
                    .setDuration(1000);
        } else {
            viewAnimator = ViewCompat.animate(v)
                    .scaleY(1).scaleX(1)
                    .setStartDelay((ITEM_DELAY * i) + 500)
                    .setDuration(500);
        }

        viewAnimator.setInterpolator(new DecelerateInterpolator()).start();
    }
}
 
@Override
protected ViewPropertyAnimatorCompat onAnimatedAdd(RecyclerView.ViewHolder holder) {
    return ViewCompat.animate(holder.itemView)
            .translationY(0)
            .setInterpolator(mInterpolator)
            .setStartDelay(offsetDelay*holder.getLayoutPosition());
}
 
源代码12 项目: FloatingSearchView   文件: MainActivity.java
@Override
protected ViewPropertyAnimatorCompat onAnimateAdd(RecyclerView.ViewHolder holder) {
    if(!mSearchView.isActivated()) return null;
    return ViewCompat.animate(holder.itemView)
            .translationY(0)
            .alpha(1)
            .setStartDelay((getAddDuration() / 2) * holder.getLayoutPosition())
            .setInterpolator(INTERPOLATOR_ADD);
}
 
源代码13 项目: FloatingSearchView   文件: MainActivity.java
@Override
protected ViewPropertyAnimatorCompat onAnimateRemove(RecyclerView.ViewHolder holder) {
    return ViewCompat.animate(holder.itemView)
            .alpha(0)
            .setStartDelay(0)
            .setInterpolator(INTERPOLATOR_REMOVE);
}
 
源代码14 项目: SprintNBA   文件: MaterialRefreshLayout.java
public void createAnimatorTranslationY(final View v, final float h, final FrameLayout fl) {
    ViewPropertyAnimatorCompat viewPropertyAnimatorCompat = ViewCompat.animate(v);
    viewPropertyAnimatorCompat.setDuration(250);
    viewPropertyAnimatorCompat.setInterpolator(new DecelerateInterpolator());
    viewPropertyAnimatorCompat.translationY(h);
    viewPropertyAnimatorCompat.start();
    viewPropertyAnimatorCompat.setUpdateListener(new ViewPropertyAnimatorUpdateListener() {
        @Override
        public void onAnimationUpdate(View view) {
            float height = ViewCompat.getTranslationY(v);
            fl.getLayoutParams().height = (int) height;
            fl.requestLayout();
        }
    });
}
 
@CheckResult
@NonNull
public static Observable<View> starts(ViewPropertyAnimatorCompat animator) {
    checkNotNull(animator, "animator == null");
    return Observable.create(
            new ViewPropertyAnimatorListenerOnSubscribe(animator, AnimationEvent.START));
}
 
@CheckResult
@NonNull
public static Observable<View> ends(ViewPropertyAnimatorCompat animator) {
    checkNotNull(animator, "animator == null");
    return Observable.create(
            new ViewPropertyAnimatorListenerOnSubscribe(animator, AnimationEvent.END));
}
 
@CheckResult
@NonNull
public static Observable<View> cancels(ViewPropertyAnimatorCompat animator) {
    checkNotNull(animator, "animator == null");
    return Observable.create(
            new ViewPropertyAnimatorListenerOnSubscribe(animator, AnimationEvent.CANCEL));
}
 
@CheckResult
@NonNull
public static Observable<View> updates(ViewPropertyAnimatorCompat animator) {
    checkNotNull(animator, "animator == null");
    return Observable.create(
            new ViewPropertyAnimatorUpdateListenerOnSubscribe(animator));
}
 
源代码19 项目: RxAnimations   文件: AnimateOnSubscribe.java
public AnimateOnSubscribe(final WeakReference<View> viewWeakRef, @Nullable final List<Action1<ViewPropertyAnimatorCompat>> preAnimationActions,
                          final List<Action1<ViewPropertyAnimatorCompat>> animationActions,
                          final Action1<View> onAnimationCancelAction) {
    this.viewWeakRef = viewWeakRef;
    this.preTransformActions = preAnimationActions;
    this.animationActions = animationActions;
    this.onAnimationCancelAction = onAnimationCancelAction;
}
 
源代码20 项目: RxAnimations   文件: AnimateOnSubscribe.java
private Subscription createClearSubscription(final ViewPropertyAnimatorCompat animator) {
    return new ClearSubscription(() -> {
        animator.setListener(new ViewPropertyAnimatorListenerAdapter() {

            @Override
            public void onAnimationCancel(final View view) {
                onAnimationCancelAction.call(view);
            }
        });
        animator.cancel();
        animator.setListener(null);
    });
}
 
源代码21 项目: BitkyShop   文件: MaterialRefreshLayout.java
public void createAnimatorTranslationY(final View v, final float h, final FrameLayout fl) {
    ViewPropertyAnimatorCompat viewPropertyAnimatorCompat = ViewCompat.animate(v);
    viewPropertyAnimatorCompat.setDuration(250);
    viewPropertyAnimatorCompat.setInterpolator(new DecelerateInterpolator());
    viewPropertyAnimatorCompat.translationY(h);
    viewPropertyAnimatorCompat.start();
    viewPropertyAnimatorCompat.setUpdateListener(new ViewPropertyAnimatorUpdateListener() {
        @Override
        public void onAnimationUpdate(View view) {
            float height = ViewCompat.getTranslationY(v);
            fl.getLayoutParams().height = (int) height;
            fl.requestLayout();
        }
    });
}
 
源代码22 项目: MousePaint   文件: MaterialRefreshLayout.java
public void createAnimatorTranslationY(final View v, final float h, final FrameLayout fl) {
    ViewPropertyAnimatorCompat viewPropertyAnimatorCompat = ViewCompat.animate(v);
    viewPropertyAnimatorCompat.setDuration(200);
    viewPropertyAnimatorCompat.setInterpolator(new DecelerateInterpolator());
    viewPropertyAnimatorCompat.translationY(h);
    viewPropertyAnimatorCompat.start();
    viewPropertyAnimatorCompat.setUpdateListener(new ViewPropertyAnimatorUpdateListener() {
        @Override
        public void onAnimationUpdate(View view) {
            float height = ViewCompat.getTranslationY(v);
            fl.getLayoutParams().height = (int) height;
            fl.requestLayout();
        }
    });
}
 
源代码23 项目: FloatingSearchView   文件: MainActivity.java
@Override
protected ViewPropertyAnimatorCompat onAnimateAdd(RecyclerView.ViewHolder holder) {
    if(!mSearchView.isActivated()) return null;
    return ViewCompat.animate(holder.itemView)
            .translationY(0)
            .alpha(1)
            .setStartDelay((getAddDuration() / 2) * holder.getLayoutPosition())
            .setInterpolator(INTERPOLATOR_ADD);
}
 
源代码24 项目: FloatingSearchView   文件: MainActivity.java
@Override
protected ViewPropertyAnimatorCompat onAnimateRemove(RecyclerView.ViewHolder holder) {
    return ViewCompat.animate(holder.itemView)
            .alpha(0)
            .setStartDelay(0)
            .setInterpolator(INTERPOLATOR_REMOVE);
}
 
源代码25 项目: MultiView   文件: Anims.java
public static ViewPropertyAnimatorCompat defaultChangeOldViewAnim(
        View view, final BaseItemAnimator.ChangeInfo changeInfo) {
    return ViewCompat.animate(view)
            .translationX(changeInfo.toX - changeInfo.fromX)
            .translationY(changeInfo.toY - changeInfo.fromY)
            .alpha(0);
}
 
源代码26 项目: MultiView   文件: Anims.java
public static ViewPropertyAnimatorCompat defaultChangeNewViewAnim(
        View view, final BaseItemAnimator.ChangeInfo changeInfo) {
    return ViewCompat.animate(view)
            .translationX(0)
            .translationY(0)
            .alpha(1);
}
 
源代码27 项目: MultiView   文件: Anims.java
public static ViewPropertyAnimatorCompat teleportChangeOldViewAnim(
        View view, final BaseItemAnimator.ChangeInfo changeInfo) {
    return ViewCompat.animate(view)
            .scaleX(0)
            .scaleY(0)
            .alpha(0);
}
 
源代码28 项目: MultiView   文件: Anims.java
public static ViewPropertyAnimatorCompat teleportChangeNewViewAnim(
        View view, final BaseItemAnimator.ChangeInfo changeInfo) {
    return ViewCompat.animate(view)
            .scaleX(1)
            .scaleY(1)
            .alpha(1);
}
 
源代码29 项目: MultiView   文件: Anims.java
public static ViewPropertyAnimatorCompat flipDownIn(final View view) {
    return ViewCompat.animate(view).withStartAction(
            new Runnable() {
                @Override
                public void run() {
                    ViewCompat.setTranslationX(view, -(view.getMeasuredWidth() / 2));
                    ViewCompat.setRotationY(view, -90);
                }
            })
            .rotationY(0)
            .translationX(0)
            .setInterpolator(new BounceInterpolator());
}
 
源代码30 项目: MultiView   文件: Anims.java
public static ViewPropertyAnimatorCompat flipDownOut(final View view) {
    return ViewCompat.animate(view)
            .rotationY(90)
            .translationX(-(view.getMeasuredWidth() / 4))
            .scaleX(0.5F)
            .scaleY(0.5F)
            .setInterpolator(new AccelerateInterpolator());
}
 
 类所在包
 同包方法