2010-02-02 2 views
0

정확히 0 대 1의 내용은 무엇입니까? 어떻게 레이어를 절대적으로 170도까지 회전시킬 수 있습니까?이 뷰를 라디안 또는도 단위의 특정 값으로 회전하는 방법은 무엇입니까?

CALayer* viewLayer = myView.layer; 
    CABasicAnimation* animation = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"]; 

    animation.fromValue = [NSNumber numberWithFloat:0.0 * M_PI]; 
    animation.toValue = [NSNumber numberWithFloat:1.0 * M_PI]; 

    animation.duration = 1.0; 
    animation.cumulative = YES; 
    animation.repeatCount = 2; 
    animation.removedOnCompletion = NO; 
    animation.fillMode = kCAFillModeForwards; 

    [viewLayer addAnimation:animation forKey:@"transform.rotation.z"]; 
+0

0 * PI = 0도로 설정합니다. 1 * PI = 180도 – Toad

답변

1

코코아를 모르는 경우 toValue는 1.0Pi 라디안 순환을 지정합니다. 360도에 2Pi 라디안이 있습니다. 따라서 1.0Pi는 180도를 나타냅니다. 170도 회전을 얻으려면 toValue를

animation.toValue = [NSNumber numberWithFloat:(170.0/180.0) * M_PI]; 
관련 문제