具有以下结构:
UIViewController
( VC )在屏幕的上半部分显示{{1>}(视图)UIViews
( tableView )在屏幕的下半部分。所有这些都在 VC的视图中的相同层次结构级别上。
VC 由UITableView
管理。
自动布局已关闭。使用自动调整遮罩。
UINavigationController
和dataSource
方法已设置并正常运行。
我想要实现的目标:
向上滚动时隐藏导航栏,向下滚动后显示。
我做了什么:
由于我的项目仅支持iOS8 +,只需设置:
delegate
应该没问题。
我有什么:
答案 0 :(得分:3)
花了一些时间,发现调整tableView以使其与vc的视图匹配解决了这个问题。
修改强>
是否在文档中某处提到表格视图应该只是全屏?
发现有趣的事情:即使你没有将- (void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
self.navigationController.hidesBarsOnSwipe = YES;
}
设置为hidesBarsOnTap
并试图点击导航区域(即滑动后仍然隐藏) - 导航栏将显示在那。如果你在那个区域有任何UI元素,那就太烦人了。