Pregunta

cómo ocultar la barra superior en UIViewcontroller cuando presiono desde el controlador de navegación usando pushViewController ? ¿Alguna ayuda por favor?

¿Fue útil?

Solución

Coloque este código en el controlador de vista para el que desea ocultar la barra de navegación.

- (void) viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];
    [self.navigationController setNavigationBarHidden:YES animated:animated];
}

Y es posible que también desee guardar esto allí, según sus necesidades:

- (void) viewWillDisappear:(BOOL)animated {
    [super viewWillDisappear:animated];
    [self.navigationController setNavigationBarHidden:NO animated:animated];
}

Otros consejos

Aquí se explica cómo hacerlo en Swift 3 :

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)
    self.navigationController?.setNavigationBarHidden(true, animated: animated)
}

P.S. Descubrí que si configuras animado en false , aparece una barra negra en la inserción. Pero cuando se establece en true ¡es tan suave como la seda!

Para iOS 8 Puede ser este trabajo alrededor podría funcionar

CATransition* transition = [CATransition animation];
        transition.duration = 0.3;
        transition.type = kCATransitionPush;
        transition.subtype = kCATransitionFromRight;
        [self.navigationController.view.layer addAnimation:transition forKey:kCATransition];
        [self.navigationController setNavigationBarHidden:TRUE animated:FALSE];
        [self.navigationController pushViewController:productViewObj animated:FALSE];
        [productViewObj.navigationController setNavigationBarHidden:TRUE animated:FALSE];
        [productViewObj release];
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top