0

我有 2 个 UIView,我想以不同的方向旋转它们。这是我的代码

    - (void)viewDidLoad
{
    [super viewDidLoad];
    // middleView and bigView are outlets of UIView
    self.middleView.transform=CGAffineTransformMakeRotation(M_PI);
    self.bigView.transform=CGAffineTransformMakeRotation(-M_PI);
}

- (IBAction)smallTouched:(id)sender {
    [UIView animateWithDuration:0.5 animations:^{
        self.middleView.transform=CGAffineTransformMakeRotation(0);
        self.bigView.transform=CGAffineTransformMakeRotation(0);

    }];
}

并且两个视图都以反时钟方向旋转。我不知道为什么。

4

1 回答 1

1

因为 sin(PI) == sin(-PI) 和 cos(PI) == cos(-PI),CGAffineTransformMakeRotation(M_PI)等于CGAffineTransformMakeRotation(-M_PI)。你可以尝试M_PI * 179.9 / 180-M_PI * 179.9 / 180或类似的东西。

于 2013-07-29T07:35:51.507 回答