wake-up-neo.com

wie verstecke ich die Navigationsleiste, wenn ich vom Navigations-Controller schiebe?

wie verstecke ich die obere Leiste in UIViewcontroller , wenn ich vom Navigationscontroller mit pushViewController schiebe? Irgendeine Hilfe, bitte?

37

Fügen Sie diesen Code in den View-Controller ein, für den Sie die Navigationsleiste ausblenden möchten.

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

Und vielleicht möchten Sie dies auch je nach Ihren Bedürfnissen dort einfügen:

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

So geht's in Swift 3 :

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

P.S. Ich habe festgestellt, dass, wenn Sie animiert auf false setzen, ein schwarzer Balken bei Push angezeigt wird. Aber wenn es auf true eingestellt ist, ist es glatt wie Seide!

7
dustinrwh

Für iOS 8 Möglicherweise könnte diese Problemumgehung funktionieren

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];
0
Zahur