BemCheckBox.BemCheckBox.AddOffAnimation C# (CSharp) Метод

AddOffAnimation() приватный Метод

private AddOffAnimation ( ) : void
Результат void
        private void AddOffAnimation()
        {
            if (_checkMarkLayer == null)
                return;
            if (Math.Abs(_animationDuration) < 0.0001f)
            {
                _onBoxLayer.RemoveFromSuperLayer();
                _checkMarkLayer.RemoveFromSuperLayer();
                return;
            }
            CABasicAnimation animation;
            switch (_onAnimationType)
            {
                case BemAnimationType.BemAnimationTypeStroke:
                    animation = _animationManager.StrokeAnimationReverse(true);
                    _onBoxLayer.AddAnimation(animation, "strokeEnd");
                    animation.Delegate = _animationDelegate;
                    _checkMarkLayer.AddAnimation(animation, "strokeEnd");
                    break;
                case BemAnimationType.BemAnimationTypeFill:
                    CAKeyFrameAnimation wiggle = _animationManager.FillAnimationWithBounces(1, 0.18f, true);
                    wiggle.Duration = _animationDuration;
                    wiggle.Delegate = _animationDelegate;
                    _onBoxLayer.AddAnimation(wiggle, "transform");
                    _checkMarkLayer.AddAnimation(_animationManager.OpacityAnimationReverse(true), "opacity");
                    break;
                case BemAnimationType.BemAnimationTypeBounce:
                    float amplitude = _boxType == BemBoxType.BemBoxTypeSquare ? 0.20f : 0.35f;
                    wiggle = _animationManager.FillAnimationWithBounces(1, amplitude, true);
                    wiggle.Duration = _animationDuration / 1.1;

                    var opacityAnimation = _animationManager.OpacityAnimationReverse(true);
                    opacityAnimation.Delegate = _animationDelegate;

                    _onBoxLayer.AddAnimation(opacityAnimation, "opacity");
                    _checkMarkLayer.AddAnimation(wiggle, "transform");
                    break;
                default:
                    animation = _animationManager.StrokeAnimationReverse(true);
                    _onBoxLayer.AddAnimation(animation, "opacity");
                    animation.Delegate = _animationDelegate;
                    _checkMarkLayer.AddAnimation(animation, "opacity");
                    break;
            }
        }