UIScrollView cambia debajo de la barra de navegación y estado

Tengo la vista que contiene un scrollView. Cuando la vista aparece, la imagen aparece en pantalla completa (320x480) ocultando el estado y la barra de navegación. Cuando toco las pantallas, aparece el estado y la barra de navegación en la pantalla. Pero esto cambia el UIScrollView debajo de la barra de navegación. Quiero que el estado y la barra de navegación se muestren en mi vista de desplazamiento.

Como sucede en la aplicación de fotos. Al tocar la imagen, el estado y la barra de navegación se muestran sobre scrollView.

A continuación se muestra cómo estoy posicionando la vista.


//What I have done in viewDidLoad
[[UIApplication sharedApplication] setStatusBarHidden:YES animated:NO];
self.wantsFullScreenLayout = YES;
scrollView = [[UIScrollView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]];
self.view = scrollView;

A continuación se muestra lo que estoy haciendo para detectar un solo toque.


- (void)tapDetectingImageView:(TapDetectingImageView *)view             gotSingleTapAtPoint:(CGPoint)tapPoint {
    // single tap hide/unhide the status and nav bar
    NSLog(@"got a single tap");
    if (self.navigationController.navigationBarHidden == NO)
    {

        [self.navigationController setNavigationBarHidden:YES animated:NO];
        [[UIApplication sharedApplication] setStatusBarHidden:YES animated:YES];
    }
    else
    {
        [[UIApplication sharedApplication] setStatusBarHidden:NO animated:YES];
        [self.navigationController setNavigationBarHidden:NO animated:NO];
    }
}

Solo un puntero para ustedes - si yo uso

[self.view addSubview:scrollView];
No veo este problema. Pero esto estropea mi código de orientación del paisaje.

Cualquiera que pueda arrojar algo de luz sobre lo que podría estar haciendo mal, ¡sería una gran ayuda!