微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么 NSScrollView 显示白色轨道?

如何解决为什么 NSScrollView 显示白色轨道?

我正在使用 ma​​cos 编程,swift。我在滚动视图中有几段文本(Lopem Ipsum - 待测试)。还有一个标题,它是一个 NSTextView,位于上方。

当我在 popover 中展示它时,一切看起来都很好。

present it in a popover

然而,在项目的另一部分,我呈现了相同的内容(使用相同布局代码的副本 - 下面),但这次是在模式窗口中。

in a modal window

它有一个丑陋的白色轨道!那必须连接到滚动视图,因为它只在我设置垂直滚动条时出现 - hasverticalScroller,这是必要的,因为我想要垂直滚动。正如它应该的那样,旋钮 会在鼠标悬停时突出显示并正确滚动。

纯白色背景可能会很好。但这不是我想要的!因此我有设置 scrollView.drawsBackground = false

我试过了:scrollView.verticalScroller?.highlight(false); scrollView.verticalScroller?.wantsLayer = true; scrollView.verticalScroller?.layer?.backgroundColor = NSColor.clear.cgColor - 不走运!

即使只试过一个段落(即没有滚动),还是一样。

enter image description here

我正在使用与此类似的代码

class ViewController: NSViewController {
    let scrollView = NSScrollView()
    let textView = NSTextView()

    override func viewDidLoad() {
        super.viewDidLoad()

        textView.maxSize = NSSize(width: CGFloat.greatestFiniteMagnitude,height: CGFloat.greatestFiniteMagnitude)
        textView.autoresizingMask = .width
        textView.isverticallyResizable = true
        textView.textContainer?.widthTracksTextView = true

        view.addSubview(scrollView)
        scrollView.translatesAutoresizingMaskIntoConstraints = false
        scrollView.documentView = textView

        NSLayoutConstraint.activate([
            scrollView.topAnchor.constraint(equalTo: view.topAnchor),scrollView.leadingAnchor.constraint(equalTo: view.leadingAnchor),scrollView.bottomAnchor.constraint(equalTo: view.bottomAnchor),scrollView.trailingAnchor.constraint(equalTo: view.trailingAnchor)
        ])
    }
}

如何在滚动条上清晰(无背景)轨迹

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。