1

どうすればこれを適切に行うことができるのだろうか。

これを行うアプリをいくつか見たことがありますが、アニメーションはスムーズです。

カメラのプレビューの上。

ImageView を配置し、ImageView の下マージンをアニメーション化します。しかし、アニメーションが遅れてカクカクしていることがわかります。

これが私がアニメーションを行う方法です

        final RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) imageView.getLayoutParams();

        fromValue = dpToPx(fromValue);
        toValue = dpToPx(toValue);

        final ValueAnimator valueAnimator = ValueAnimator.ofInt(fromValue, toValue);

        valueAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
            @Override
            public void onAnimationUpdate(ValueAnimator valueAnimator) {
                params.bottomMargin = (Integer) valueAnimator.getAnimatedValue();
                imageView.requestLayout();
            }
        });

        valueAnimator.setDuration(duration);
        valueAnimator.setInterpolator(timeInterpolator);

何か案は?

4

0 に答える 0