Force clockwise/anticlockwise rotation for a CABasicAnimation of a UIImageView

前端 未结 4 1166
清酒与你
清酒与你 2021-02-15 12:46

I\'m animating a pendulum which swings from 0 degrees to max 200 degrees and then back again. The problem is that if the pendulum goes over 180 degrees, it returns to 0 by the s

4条回答
  •  别跟我提以往
    2021-02-15 13:13

    Try setting something like

    rotationAnimation.valueFunction = [CAValueFunction functionWithName:kCAValueFunctionRotateZ];
    

    Using value transform functions, animations can effect the transform property of a layer using arbitrary transforms of each component (no normalization to 360°) and concatenate in the normally when multiple animations are applied at once.

    You use a value transform function that rotates from 0° to 180° around the z-axis by creating a CAValueTransform function specifying the kCAValueFunctionRotateZ and then creating an animation with a fromValue of 0, a toValue of M_PI, and set the animation’s valueTransform property to the value transform instance.

提交回复
热议问题