2011-05-09 133 views
2

我也做了编码中使用旋转罗盘针:如何旋转罗盘针顺利

NeedleView.transform=CGAffineTransformMakeRotation(theHeading); 

但转动不顺畅。它正在粗略地移动。

任何人都可以告诉我如何做一个平滑的旋转指南针针对角运动?

回答

0

用变换做一个动画,不要设置它。如果你设置它,它会立即改变旋转。动画会减慢速度。您可以选择动画发生的持续时间来减慢播放速度。查看动画API的UIView文档。

1

试试这个。适合我。

- (void)locationManager:(CLLocationManager *)manager didUpdateHeading:(CLHeading *)newHeading { 
self.lblGrados.text = [NSString stringWithFormat:@"%.0f°", newHeading.magneticHeading]; 

[UIView animateWithDuration:0.5 delay:0 options:UIViewAnimationOptionCurveEaseInOut animations:^{ 

needle.transform = CGAffineTransformMakeRotation((degrees-newHeading.trueHeading) * M_PI/180); 
    } completion:nil]; 


}