【问题标题】:hideBottomBarOnPush not working on child viewshideBottomBarOnPush 不适用于子视图
【发布时间】:2016-07-21 00:58:44
【问题描述】:

hidesBottomBarOnPush 设置为true 时,在performSegues 上使用带有参数的segues 推送将隐藏底部栏,问题出在已隐藏视图的子视图上,您​​无法显示/取消隐藏底部栏.已经尝试过hidesBottomBarOnPush = false。当父视图的底栏被隐藏时,有什么办法可以取消隐藏底栏。

编辑:

如果我使用tabBar.hidden,视图底部会显示一个小的白色矩形。还有另一个问题是,当我切换到另一个选项卡然后返回到我正在处理的选项卡时,子视图被保留但 tabBar 被隐藏。

图例:

  • 3rd view controller - 是推动 segues 的 parent view
  • 4th view controller - 是child view

希望有人能帮我解决这个问题。

【问题讨论】:

  • 子视图是另一个控制器的视图吗?你能显示你的代码sn-p
  • 我已经添加了图片,hidesBottomBarOnPush 的代码可以通过 IB Storyboard Editor 或prepareForSegue 添加或设置

标签: ios cocoa-touch uinavigationcontroller uitabbarcontroller


【解决方案1】:

如果你想在一个特定的视图控制器中隐藏底栏,并在其他视图控制器中显示,试试这个,我认为这比hidesBottomBarOnPush更好

- (void)viewWillAppear:(BOOL)animated{
      [super viewWillAppear:animated];
      [self.tabBarViewController.tabBar setHidden:YES];
}

- (void)viewWillDisappear:(BOOL)animated{
      [super viewWillDisappear];
      [self.tabBarViewController.tabBar setHidden:NO];
}

【讨论】:

  • 一个小的白色矩形将出现在视图的底部。
  • 你试过了吗?如果是tableView,底部不会被覆盖?
  • 那么“hidesBottomBarOnPush”和“setHidden”呢?
  • 我已经试过了,也没有放一个表格视图,而是一个自定义的介绍视图,这就是为什么我需要一个没有任何导航栏、标签栏、状态栏的全屏视图。
  • 不推送而是模态展示怎么样?并将第 4 个 VC 嵌入到导航控制器中,第 3 个 VC 呈现导航?
猜你喜欢
  • 2012-06-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-29
  • 1970-01-01
相关资源
最近更新 更多