如何使用UIAccelerometer找出设备何时水平和垂直竖直放置

时间:2010-05-12 10:18:16

标签: iphone

如何在水平和垂直方向上直接观察ipod。

任何人都可以帮助我吗?

提前致谢.....

2 个答案:

答案 0 :(得分:1)

您会读取加速度计值。一个轴上的值约为1,而所有其他轴上的值约为0表示器件处于静止状态且处于垂直(或水平)方向:1表示通过器件平面作用的1 G。当然这只适用于地球:-)我想在除了一个轴之外检查0将消除该错误!

答案 1 :(得分:0)

如果我理解你的问题,也许你可以通过UIDevice方向轻松地了解它。

[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];
[[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(orientationObserver) name: UIDeviceOrientationDidChangeNotification object: nil];

在选择器上,使用

进行方向
UIDeviceOrientation orientation = [[UIDevice currentDevice] orientation];

这样可以避免检查加速度并知道设备的方向。

 UIDeviceOrientationPortrait,
 UIDeviceOrientationPortraitUpsideDown,
 UIDeviceOrientationLandscapeLeft,
 UIDeviceOrientationLandscapeRight,
 UIDeviceOrientationFaceUp,
 UIDeviceOrientationFaceDown