【问题标题】:hidesBarsOnSwipe doesn't workhidesBarsOnSwipe 不起作用
【发布时间】:2015-09-06 10:32:03
【问题描述】:

具有以下结构:

UIViewController (VC) 在屏幕上半部分有一些 UIViews(views) 和 UITableView (tableView ) 在屏幕的下半部分。在 VC 的 视图中,它们都位于同一层次结构级别。

VC 由UINavigationController 管理。

自动布局已关闭。使用自动调整大小的蒙版。

dataSource 和 delegate 方法已设置并且工作正常。

我想实现的:

向上滚动时隐藏导航栏,向下滚动后显示。

我做了什么:

由于我的项目只支持iOS8+,只需设置:

- (void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:animated];

    self.navigationController.hidesBarsOnSwipe = YES;
}

应该没问题。

我有什么:

  1. 在视图上上下滑动分别隐藏和显示导航栏。
  2. 滚动 tableView 没有意义。

【问题讨论】:

    标签: ios ios8


    【解决方案1】:

    花了一些时间,发现调整tableView的大小使其与vc的视图匹配可以解决问题。

    编辑:

    1. 文档中是否提到表格视图只能全屏显示?

    2. 发现有趣的事情:即使您没有将hidesBarsOnTap 设置为YES 并尝试点击导航区域(即当它在滑动后仍处于隐藏状态时)- 导航栏将在此之后显示。如果您在该区域有任何 UI 元素,那将非常烦人。

    【讨论】:

    • 这也适用于 WKWebView。感谢您的提示。
    猜你喜欢
    • 2015-01-29
    • 2015-06-28
    • 1970-01-01
    • 2017-11-28
    • 1970-01-01
    • 2014-12-27
    • 2015-06-01
    • 1970-01-01
    • 2016-03-13
    相关资源
    最近更新 更多