2013-11-01 4 views
0

Я использую [[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications] для получения уведомлений о том, когда ориентация устройства UIDeviceOrientationFaceDown.Реализация UIDeviceOrientationFaceDown sing Core Motion Framework

Он отлично работает, за исключением случаев, когда ориентация устройства заблокирована.

Есть ли способ реализовать то же поведение с использованием гироскопа Core Motion Framework ...?

+0

Любые причины для Downvote? –

ответ

1
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    self.motionUpdatesQueue = [NSOperationQueue new]; 
    self.motionUpdatesQueue.maxConcurrentOperationCount = 1; 
    self.motionManager = [CMMotionManager new]; 
    [self.motionManager startDeviceMotionUpdatesToQueue:self.motionUpdatesQueue withHandler:^(CMDeviceMotion *motion, NSError *error) { 
     [self handleMotion:motion error:error]; 
    }]; 
    return YES; 
} 

- (void)handleMotion:(CMDeviceMotion *)motion error:(NSError *)error { 
    double diff = fabs(1.0 - motion.gravity.z); 
    if(diff < .1) { 
     NSLog(@"FaceDown"); 
    } else { 
     NSLog(@"non FaceDown"); 
    } 
} 
+0

Префект! Я был в общем правильном направлении, но я случайно попытался получить гироскоп вместо Motion ... THunk you! –

Смежные вопросы