如何创建旋转按钮?

时间:2014-03-11 13:38:45

标签: ios iphone objective-c animation

如何创建旋转按钮(请检查屏幕截图)?我想按顺时针方向旋转所有按钮。如果我选择任何一个按钮,它将执行一些操作。我该如何处理这种设计?请提供此类(或)的任何示例源代码,以提供有关此任务的一些建议。 提前谢谢。

enter image description here

3 个答案:

答案 0 :(得分:1)

首先在viewdidload中调用计时器:

NSTimer *timer1 = [NSTimer scheduledTimerWithTimeInterval:0.02f 
                      target: self 
                      selector: @selector(rotatethecircle) 
                      userInfo: nil repeats: YES];
[timer1 fire];

然后是timer方法,使用CGAffineTransform:

-(void)rotatethecircle{

    CGAffineTransform cgaRotate = CGAffineTransformMakeRotation(-angle*PHI);
    CGAffineTransform buttonRotate = CGAffineTransformMakeRotation(angle*PHI);

    viewRotate.transform = cgaRotate;
    buttonCircleFirst.transform = buttonRotate;
    buttonCircleSecond.transform = buttonRotate;
    angle=angle+4;

}

答案 1 :(得分:0)

您可以实现iCarousel类,并将按钮添加到旋转视图中。它基本上作为表视图,但也旋转单元格。您可以添加按钮而不是单元格,并以您想要的任何方式旋转它们。

答案 2 :(得分:0)

首先你需要容器​​视图来拥有所有按钮,然后你需要为容器上的每个按钮获得x和y,方法是让R是从容器中心到按钮中心的半径,按钮之间的最小角度。
这是一个类似于您想要实现的教程http://www.raywenderlich.com/9864/how-to-create-a-rotating-wheel-control-with-uikit