【问题标题】:UINavigationController navigationBarHidden set to true only for a single view controllerUINavigationController navigationBarHidden 仅针对单个视图控制器设置为 true
【发布时间】:2014-12-22 23:35:40
【问题描述】:

假设,我有一个类型的视图层次结构:

A [rootviewcontroller of a UINavigationController] --> B --> C

我想为 A 禁用 navigationBar 但为 B & C 启用它。

  1. 可以这样做吗?
  2. 目前,我通过在viewWillAppear 中为 B 和 C 启用它来实现这一点,但在 viewWillAppear 为 A 时禁用它。这有点工作,但感觉不自然和强迫。有正确的方法吗?

【问题讨论】:

  • 我认为这是正确的方法,但如果导航总是从 A 到 B 再到 C,则不必在 C 中设置它。
  • 确实如此。谢谢。
  • 您也可以在 viewDidLoad 中执行此操作,然后不会在每次视图出现时都执行此操作,而只是第一次。
  • 您是否尝试在vc A的viewDidDisAppear中启用导航?

标签: ios objective-c uiviewcontroller uinavigationcontroller uikit


【解决方案1】:

你最好将导航栏隐藏在 viewDidAppear 方法中。

  -(void)viewDidAppear:(BOOL)animated{  

        [yourNavigationController setNavigationBarHidden:YES animated:YES];   
   }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-01-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-17
    • 2011-05-11
    • 1970-01-01
    相关资源
    最近更新 更多