public static CAKeyFrameAnimation Path(UIBezierPath bezierPath, MaterialAnimationRotationMode mode = MaterialAnimationRotationMode.Auto, double?duration = null) { var animation = CAKeyFrameAnimation.FromKeyPath("position"); animation.Path = bezierPath.CGPath; animation.RotationMode = Convert.MaterialAnimationRotationModeToValue(mode); if (duration != null) { animation.Duration = duration.Value; } return(animation); }
public static string MaterialAnimationRotationModeToValue(MaterialAnimationRotationMode mode) { switch (mode) { case MaterialAnimationRotationMode.None: return(null); case MaterialAnimationRotationMode.Auto: return(CAAnimation.RotateModeAuto); case MaterialAnimationRotationMode.AutoReverse: return(CAAnimation.RotateModeAutoReverse); default: return(null); } }