Cocoa touch UIView动画块中的360度动画永远不会启动

Cocoa touch UIView动画块中的360度动画永远不会启动,cocoa-touch,animation,objective-c-blocks,Cocoa Touch,Animation,Objective C Blocks,这个动画永远不会开始。我对弧度角使用的任何数字看起来Cocoa有点“太聪明”,要么在最接近的PI内对其进行取整,要么如上所述,决定不需要设置动画,因为起始角和结束角是相同的360=0度。所以,即使我尝试做359度,这个圆也只是以逆时钟方式设置1度的动画,而不是完全的1度旋转 如何对视图进行简单的连续360度旋转? 提前感谢:)如中所述,您可以直接尝试使用CAAnimations。谢谢。苹果公司建议采用块方法,这让我很恼火,但我不断遇到它不能做的事情,或者涉及到疯狂的黑客来制作简单的动画。在上面,

这个动画永远不会开始。我对弧度角使用的任何数字看起来Cocoa有点“太聪明”,要么在最接近的PI内对其进行取整,要么如上所述,决定不需要设置动画,因为起始角和结束角是相同的360=0度。所以,即使我尝试做359度,这个圆也只是以逆时钟方式设置1度的动画,而不是完全的1度旋转

如何对视图进行简单的连续360度旋转?


提前感谢:)

如中所述,您可以直接尝试使用CAAnimations。谢谢。苹果公司建议采用块方法,这让我很恼火,但我不断遇到它不能做的事情,或者涉及到疯狂的黑客来制作简单的动画。在上面,我可以在一个块中包装一个从0到180度的180度动画,在180到360度的块中包装另一个180度动画。但是,除非我调用从第二个完成块内部保存动画的方法,否则这将无法重复-创建一个无法再次停止的无限循环。。我还注意到,线程中没有一个答案被标记为正确的?您可以使用计数器变量或其他各种方法停止循环。但我同意,如果它能起作用就好了。我建议你。我反复检查了一遍,最明智的方法就是按照你的建议使用自动化方法。
    [UIView animateWithDuration:1.0
                      delay: 0.0
                    options: UIViewAnimationOptionAllowUserInteraction | UIViewAnimationOptionCurveEaseOut | UIViewAnimationOptionRepeat
                 animations:^{
                     self.circle.transform = CGAffineTransformMakeRotation(M_PI * 2.0f);
                 }
                 completion:^(BOOL finished){

                 }];