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