代码之家  ›  专栏  ›  技术社区  ›  Nrc

滚动在WebView macOS中不可见

  •  0
  • Nrc  · 技术社区  · 4 年前

    实现WEBVIEW

    我有一个从图书馆到故事板的网络视图 我有联系

     @IBOutlet weak var webView1: WKWebView!
    

    我在视图控制器.swift:

    webView1.load(URLRequest(url: URL(string: "https:www.apple.com")!))
    

    我试过的

    我试过很多方法,但不妨发表评论:

    -iOS解决方案在macOS中不起作用:

    webView1.scrollView.isScrollEnabled = false
    

    -有一些问题相似,但不同: OS X Swift WebView disable scrolling

    他询问如何禁用WebView。我问如何使它不可见。事实上,我不在乎它是不是残疾。

    无论如何,我已经尝试过这个解决方案:

    webView1.mainFrame.frameView.allowsScrolling = false;
    

    0 回复  |  直到 4 年前
        1
  •  1
  •   Yannic    4 年前

    它给我一个错误:“WKWebView”类型的值没有成员“mainFrame”

    我想上面提到的线程是指弃用的遗留问题 WebView

    是否可以使滚动条在macOS的WebView中不可见?

    如本节所述 SO thread ,没有用于禁用滚动功能的属性。 this pull request

    以下是Swift中的一个工作示例:

    class NoScrollWebView: WKWebView {
        override func scrollWheel(with theEvent: NSEvent) {
            nextResponder?.scrollWheel(with: theEvent)
            return
        }
    }
    

    记住,即使在IBOutlet中也要更改类,但也要在故事板中更改。

        2
  •  1
  •   eemrah    4 年前
    webview.enclosingScrollView?.verticalScrollElasticity = .allowed
    webview.enclosingScrollView?.horizontalScrollElasticity = .allowed
    webview.enclosingScrollView?.scrollerKnobStyle = .dark // change it
    

    一些 Cocoa 控件的内部具有类似于 NSCollectionView 还有更多。上面的行使您允许滚动启用,它使滚动可见,因为滚动已启用,它有一些风格。

    webview.enclosingScrollView?.horizontalScroller?.isHidden = true
    

    这是水平的,你必须设置为垂直。