【问题标题】:How to hide Navigation Bar, when my wkwebview start scrolling?当我的 wkwebview 开始滚动时,如何隐藏导航栏?
【发布时间】:2021-09-26 06:11:16
【问题描述】:

我正在使用 WKWebview 来显示我的内容。当我滚动 webview 时,我想隐藏我的导航栏。我使用下面的代码,没有任何反应。

navigationController?.hidesBarsOnSwipe = true

谁能告诉我,怎么做。

【问题讨论】:

    标签: ios swift ipad swift5


    【解决方案1】:

    为带有superview的webView添加顶部约束,将hidesBarsOnSwipe设置为true,然后加载URL(查看截图以供参考):

    【讨论】:

      【解决方案2】:

      通过代码的方法之一是您可以使用 scrollview 委托方法来识别 webview 是否滚动。在那里你可以使用navigationController?.setNavigationBarHidden(isHidden, animated: true)。 像这样的:

      在 viewdidload self.webView.scrollView.delegate = self 中设置滚动视图委托。然后使用

       func scrollViewDidScroll(_ scrollView: UIScrollView) {
          if scrollView.panGestureRecognizer.translation(in: scrollView.superview).y > 0
          {
              print("up")
              navigationController?.setNavigationBarHidden(false, animated: true)
          }
          else
          {
              print("down")
              navigationController?.setNavigationBarHidden(true, animated: true)
          }
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-03-03
        • 1970-01-01
        • 1970-01-01
        • 2019-01-07
        • 1970-01-01
        • 1970-01-01
        • 2021-02-07
        • 1970-01-01
        相关资源
        最近更新 更多