Android动画师无法正常工作

Dan*_*son 2 android xamarin objectanimator

我试图做一个类似IPhone coverflow的动画师,但更简单一点.现在我试图进行旋转,然后使图像全屏,但什么也没发生.

            ImageView i = (ImageView) FindViewById(args.Position);

            var disp = WindowManager.DefaultDisplay;
            var height = disp.Height;
            var width = disp.Width;


            ObjectAnimator anim = ObjectAnimator.OfInt(i, "rotationY", 0, 180);
            ObjectAnimator scaleX = ObjectAnimator.OfInt(i, "scaleX", width);
            ObjectAnimator scaleY = ObjectAnimator.OfInt(i, "scaleY", height);
            AnimatorSet set = new AnimatorSet();
            set.Play(anim).With(scaleX).With(scaleY);
Run Code Online (Sandbox Code Playgroud)

代码有什么问题?为什么没有发生?

Tan*_*.7x 9

你需要调用Start()AnimatorSet实际开始动画.

Play()方法实际上不播放动画 - 它指定了该组应该播放的动画,并创建了一个AnimatorSet.Builder可用于设置其他约束(例如您的With())的动画.

其次,你的ObjectAnimators都在寻找整数属性,但是旋转缩放属性需要浮点数.

你应该使用ObjectAnimator.OfFloat()而不是.