Xamarin AnimationEnd事件仅触发一次

时间:2017-02-18 19:05:01

标签: c# xamarin xamarin.android android-animation

所以我有几行代码,我尝试制作动画循环。不幸的是,它只会在每次事件停止时触发一次。你能帮我吗?

ImageView imgView1 = FindViewById<ImageView>(Resource.Id.falling_stars1);
ImageView imgView2 = FindViewById<ImageView>(Resource.Id.falling_stars2);

Android.Animation.ObjectAnimator animator1 = Android.Animation.ObjectAnimator.OfFloat(imgView1, "y", -700, 100);
Android.Animation.ObjectAnimator animator2 = Android.Animation.ObjectAnimator.OfFloat(imgView2, "y", 100, 900);

animator1.SetDuration(2000);
animator2.SetDuration(2000);
animator1.Start();
animator2.Start();

animator1.AnimationEnd += delegate
{
    animator1.Start();
};

animator2.AnimationEnd += delegate
{
    animator2.Start();
};

1 个答案:

答案 0 :(得分:0)

RepeatMode: Defines the animation behavior when it reaches the end and the repeat count is greater than 0 or infinite.

Android.Animation.ObjectAnimator animator1 = Android.Animation.ObjectAnimator.OfFloat(imgView1, "y", -700, 100);
animator1.SetDuration(2000);
animator1.RepeatCount = ValueAnimator.Infinite;
animator1.RepeatMode = ValueAnimatorRepeatMode.Restart;