Compruebe la barra de estado de iOS oculta con un controller de vista modal

así que estoy usando la plantilla "Aplicación de Utilidad" en Xcode y tengo el Controlador de Vista Principal , donde el usuario puede ocultar y mostrar la barra de estado usando un button. También tengo el controller Flipside View , usando un segue modal, que tiene un button hecho para volver al Main VC . Lo he configurado para que cada vez que ve el Flipside VC , la barra de estado siempre NO esté oculta. Esto significa que si el usuario oculta la barra de estado en el VC principal y transita al Flipside VC , se animará y si el usuario no ocultó la barra de estado y la transición, no pasa nada a la barra de estado.

Eso está muy bien, el problema es la transición de return de Flipside VC a Main VC . Necesito una condición para verificar el estado oculto de la barra de estado en el VC principal , que se llamaría en el VC de Flipside al presionar el button hecho.

He estudiado el uso de un BOOL y NSNotificationCenter para enviar un post al Flipside VC sobre el estado de la barra de estado.

Tenía este código:

-(BOOL)checkStatusBarHidden:(id)input { BOOL result; if ([UIApplication shanetworkingApplication].statusBarHidden = YES) { result = YES; } else { result = NO; } return result; } 

Pero esto es solo adivinar y pensar que podría usarla en alguna parte para informar al Flipside VC del estado de la barra de estado. Pensé en cambiar el

 [UIApplication shanetworkingApplication].statusBarHidden = YES) 

a algo como

 self.statusBarHidden = YES //which of course isn't going to work 

Pero de todos modos, como dije, es adivinar y no estoy seguro de qué hacer.

Puede pensar en almacenar la información sobre el estado de la barra de estado en MainViewController usando una propiedad, por ejemplo,

En su MainViewController.h

 @property (nonatomic, assign) BOOL statusBarHidden; 

entonces puede acceder a ese valor desde el FlipsideViewController utilizando la propiedad presentingViewController ViewController.

En su FlipsideViewController.h

 MainViewController * mainVC = self.presentingViewController; if (mainVC.statusBarHidden) { // Do stuff } 

Como comentario final, cambie su método checkStatusBarHidden: a algo así

 - (BOOL)checkStatusBarHidden { return [UIApplication shanetworkingApplication].statusBarHidden; }