Pregunta

Tengo la vista que contiene un scrollView.Cuando la vista se muestra la imagen que aparece en pantalla completa (320x480) ocultar el estado y la barra de navegación.Cuando me toque la pantalla de estado y la barra de navegación aparece en la pantalla.Pero esto no lo cambia el UIScrollView debajo de la barra de navegación.Quiero que el estado y la barra de navegación para mostrar más de mi desplácese a la vista.

Como sucede en la aplicación de fotos.Sobre explotación de la imagen del estado y de la barra de navegación muestra más de la scrollView.

A continuación es cómo yo soy el posicionamiento de 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 es lo que estoy haciendo en la detección de 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];
    }
}

Sólo un puntero para los chicos - Si yo uso

[self.view addSubview:scrollView];
Yo no veo este problema.Pero este desastre mi orientación horizontal código.

Alguien que pueda arrojar algo de luz en lo que podría estar haciendo mal - sería de gran ayuda!

¿Fue útil?

Solución 2

He encontrado la solución a mí mismo.En mi toque en la detección de código de la persona fn puedo agregar la siguiente línea en el último.

scrollView.contentOffset = CGPointMake(parentScrollView.contentOffset.x,0);

No estoy seguro si este es el enfoque correcto.Pero si alguien puede sugerir un mejor enfoque - más que bienvenido!

Otros consejos

Parece ser que algunos de manejo especial dentro de UIScrollView cuando las barras de herramientas de navegación que se alternan.Como se señaló al final de su pregunta, si usted pone el desplazamiento de la vista dentro de un contengan UIView, este reposicionamiento problema no se produce.

Para solucionar el paisaje problemas, asegúrese de que la configuración de la autoresizingMask en el contenedor de la vista y el desplazamiento de la vista.No me tienen que agregar ninguna manipulación adicional para el modo de paisaje en mi proyecto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top