6
Sto pensando di catturare il valore iniziale di UIAcceleration e confrontarlo con il valore corrente e poi con 'misurare', ma non so esattamente se (1) è giusto (2) cosa dovrebbe essere quella matematica.Come posso determinare l'angolo del dispositivo?
Grazie per qualsiasi aiuto.
Aggiornamento:
Ecco il codice che ho usato come suggerito da jrturton.
#import "ViewController.h"
@interface ViewController()
{
CMMotionManager *motionManager;
}
@end
@implementation ViewController
@synthesize angleLabel;
- (void)startMotion
{
if (motionManager == nil)
{
motionManager = [[CMMotionManager alloc] init];
}
motionManager = [[CMMotionManager alloc] init];
[motionManager startDeviceMotionUpdatesToQueue:[NSOperationQueue currentQueue] withHandler:^(CMDeviceMotion *motion, NSError *error) {
angleLabel.text = [NSString stringWithFormat:@"%g", motion.attitude.pitch];
}];
}
- (void) stopMotion
{
if (motionManager)
{
[motionManager stopDeviceMotionUpdates];
}
motionManager = nil;
}
- (void)viewDidUnload {
[self setAngleLabel:nil];
[super viewDidUnload];
}
@end
Grazie, ho funzionato. Andando ad allegare il codice nella domanda originale. – cynicaljoy