Pergunta

Como a barra superior esconder em UIViewController quando eu empurro de controlador de navegação usando pushViewController ? alguma ajuda por favor?

Foi útil?

Solução

Coloque este código no controlador de vista que você deseja ocultar a barra de navegação para.

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

E você também pode querer manter isso em lá, dependendo de suas necessidades:

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

Outras dicas

Aqui está como fazê-lo em Swift 3 :

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

P.S. Descobri que se você definir animado para false, um aparece de barras pretas no empurrão. Mas quando ela é definida como true É suave como seda!

Para iOS 8 Pode ser este em torno do trabalho poderia trabalhar it

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 em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top