【问题标题】:NavigationBar Hides and Shows Depending on User Scroll direction IOS SWIFTNavigationBar 根据用户滚动方向隐藏和显示 IOS SWIFT
【发布时间】:2016-10-20 05:10:13
【问题描述】:

这个想法一直让他们发疯,因为尽管它创建了多个线程,但我仍然无法找到合适的解决方案。所以基本上我希望能够在滑动时隐藏navigationbar,但我也希望能够在向上滑动时调用它(比如 facebook ),我想这样做而不必使用来自 GitHub 的任何代码。

这是我的想法:

获取用户在屏幕上滑动的方向(或者在我的情况下是UIScrollView,内部带有UITableView),如果方向向下,navigationbar 消失,如果方向向上, navigationbar 向下滑动。唯一的问题是我从UIScrollView 看不到任何明确的方法。有人可以帮助我逐步了解如何实施吗?

【问题讨论】:

  • self.navigationController?.hidesBarsOnSwipe = true
  • 试试 self.navigationController?.hidesBarsOnSwipe = true。如果你想在点击时隐藏 self.navigationController?.hidesBarsOnTap = true。当键盘出现时隐藏 self.navigationController?.hidesBarsWhenKeyboardAppears = true

标签: ios iphone swift uinavigationbar


【解决方案1】:

将导航控制器属性 hidesBarsOnSwipe 设置为 true

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

    navigationController?.hidesBarsOnSwipe = true
}

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

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

【讨论】:

    猜你喜欢
    • 2015-11-02
    • 2018-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-26
    相关资源
    最近更新 更多