how to hide navigationbar when i push from navigation controller?

前端 未结 3 2019
独厮守ぢ
独厮守ぢ 2020-12-03 00:50

how to hide top bar in UIViewcontroller when i push from navigation controller using pushViewController ? any help please?

相关标签:
3条回答
  • Put this code in the view controller you want to hide the navigation bar for.

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

    And you may also want to stick this in there, depending on your needs:

    - (void) viewWillDisappear:(BOOL)animated {
        [super viewWillDisappear:animated];
        [self.navigationController setNavigationBarHidden:NO animated:animated];
    }
    
    0 讨论(0)
  • 2020-12-03 01:26

    For iOS 8 May be this work around could work 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];
    
    0 讨论(0)
  • 2020-12-03 01:27

    Here's how to do it in Swift 3:

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

    P.S. I found that if you set animated to false, a black bar appears on push. But when it is set to true it's smooth as silk!

    0 讨论(0)
提交回复
热议问题