是否有框架或示例代码显示如何使用UIAccelerometer
来控制屏幕级别,类似于气泡级应用程序?
我意识到我需要使用它:
UIAccelerometer *accel = [UIAccelerometer sharedAccelerometer];
accel.delegate = self;
accel.updateInterval = 1.0f/50.0f;
- (void)accelerometer:(UIAccelerometer *)acel didAccelerate:(UIAcceleration *)aceler
{
// get angle in radians
float angle = atan2(aceler.x, aceler.y);
// convert to degrees
float angleInDegrees = (angle * 180/M_PI);
NSLog(@"%.0f degrees",angleInDegrees);
if (angleInDegrees > 90) {
self.levelIndicator.center = CGPointMake(self.cachedLevel.x+angleInDegrees-90, self.cachedLevel.y);
} else {
self.levelIndicator.center = CGPointMake(self.cachedLevel.x-angleInDegrees+90, self.cachedLevel.y);
}
}
我如何使用angleInDegrees
根据角度从中心向左或向右移动一个简单的UIView
?我上面的尝试并不是很成功。
答案 0 :(得分:2)
Apple过去常常会有一些示例代码,而且看起来有人想要保存它,即使Apple似乎不再在他们的开发网站上提供它。 ;)
享受!
https://github.com/acekiller/iOS-Samples/tree/master/BubbleLevel