UIViewController中的表视图不会获取hidesBarsOnSwipe功能

时间:2016-10-28 06:27:13

标签: ios objective-c uiscrollview uinavigationcontroller uikit

我有一个表视图作为常规UIViewController的第一个子视图。我已经尝试将导航控制器的barHideOnSwipeGestureRecognizer手势识别器添加到我的视图和表视图中,但没有骰子。在下面的片段中,blah:永远不会被调用。

[self.navigationController setHidesBarsOnSwipe:YES];
[self.tableView addGestureRecognizer:self.navigationController.barHideOnSwipeGestureRecognizer];
[self.navigationController.barHideOnSwipeGestureRecognizer addTarget:self action:@selector(blah:)];

我觉得barHideOnSwipeGestureRecognizer是在不使用顶级滚动视图控制器(集合或表格)时利用这个不错的功能的方法,但我无法弄清楚具体如何。

1 个答案:

答案 0 :(得分:2)

如果您想在滑动时隐藏navigationbar,则意味着向上滚动tableview(向下),然后

 self.navigationController.hidesBarsOnSwipe = YES;

足以实现这一目标。它会隐藏navigationbar并在tap上再次显示。确保已为tableview设置了适当的约束。您的约束应为top,bottom,leading and trailing0常量为nearest neighbor