这个想法使他们发疯,因为尽管创建了多个线程,但我一直找不到合适的解决方案。因此,基本上,我希望能够在滑动时隐藏navigationbar,但我也希望能够在向上滑动时将其回调(例如facebook),并且我希望这样做而不必使用GitHub上的任何代码。

这是我的想法:

获取用户在屏幕上滑动的方向(在我的情况下为内部带有UIScrollViewUITableView),如果方向向下,则navigationbar消失,如果方向向上,则navigationbar向后滑动。唯一的问题是,我没有从UIScrollView看到任何明确的方法来执行此操作。有人可以逐步帮助我吗?

最佳答案

设置导航控制器属性 hidesBarsOnSwipe true

override func viewDidAppear(animated: Bool) {
    super.viewDidAppear(animated)

    navigationController?.hidesBarsOnSwipe = true
}

您也可以使用第三方库https://github.com/tristanhimmelman/HidingNavigationBar

您可以在Apple开发人员文档中阅读如何隐藏
https://developer.apple.com/reference/uikit/uinavigationcontroller

关于ios - 根据用户滚动方向隐藏和显示NavigationBar IOS SWIFT,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40145891/

10-10 20:40