如果在 xamarin 中单击按钮,如何立即停止 lottie 动画

How to immediately stop a lottie animation if button is clicked in xamarin

我的按钮有这个点击事件:

        private void BtnRecord_Clicked(object sender, EventArgs e)
        {           
            if (BtnRecord.BackgroundColor == Color.Coral)
            {
                blue_record_lottie.Loop = true;
                blue_record_lottie.AutoPlay = true;
                blue_record_lottie.Play();
                BtnRecord.BackgroundColor = Color.Red;
            }

            else if (BtnRecord.BackgroundColor == Color.Red)
            {
                BtnRecord.BackgroundColor = Color.Coral;
                blue_record_lottie.AbortAnimation(blue_record_lottie.ToString());
                blue_record_lottie.Loop = false;
                blue_record_lottie.AutoPlay = false;
            }
        }

如果按钮颜色为红色并且动画播放完毕,它只是停止按钮的动画。动画必须从动画开始到结束结束,然后停止。我希望它在我点击按钮时立即停止。

提前致谢

如果你想让你的动画立即回到动画的第一个状态,你可以这样做:

Animation.PlayFrameSegment(0, 0);

这将播放动画的第一帧,之后,您可以像往常一样重新启动动画。

从 Xamarin Lottie 4.0 开始,PlayFrameSegment 方法不再存在。相反,您将不得不使用:

Animation.PlayMinAndMaxFrame(0.0f, 0.0f);

Animation.PlayMinAndMaxProgress(0.0f, 0.0f);

Animation.playAnimation; 开始

Animation.pauseAnimation;停止