我正在寻找一种在 iPhone 应用程序中创建菜单的方法,该菜单允许按钮围绕中心点旋转。用视觉术语来说:按钮是行星,中心是太阳。
- 这将允许用户围绕圆形路径“旋转”按钮。
** 这方面的一个实际示例是他们的 iPhone 应用程序的 Poynt 菜单。**
我开始使用这段代码,这是我从 mahboudz 在 SO 上的一篇文章中找到的:
- (void) runSpinAnimationWithDuration:(UIView*)animatedView withDuration:(CGFloat) duration;
{
CABasicAnimation* rotationAnimation;
rotationAnimation = [CABasicAnimation animationWithKeyPath:@"transform.rotation.y"];
rotationAnimation.toValue = [NSNumber numberWithFloat: M_PI * 2.0 /* full rotation*/ * 1 * duration ];
rotationAnimation.duration = duration;
rotationAnimation.cumulative = YES;
rotationAnimation.repeatCount = 1.0;
rotationAnimation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut];
[animatedView.layer setAnchorPoint:CGPointMake( 0.5, 0.5 )];
[animatedView.layer addAnimation:rotationAnimation forKey:@"rotationAnimation"];
}
SO上有一篇关于轮换的有趣帖子:link text
无论如何,我可以旋转一个按钮 - 但不能围绕预定的路径(如行星场景)。
任何帮助,将不胜感激。