gpt4 book ai didi

objective-c - NSScrollView 叠加小牛

转载 作者:搜寻专家 更新时间:2023-10-30 20:09:17 25 4
gpt4 key购买 nike

自从 Mavericks 以来,我的应用程序出现了以下问题:我以编程方式创建了一个具有窗口大小的 NSBox。然后我将它作为 subview 添加到 Windows contentView。所以我想覆盖 View 上的所有界面元素。自 Mountain Lion 以来,这非常有效,在 Mavericks 中,NSScrollView 不会被覆盖。

也许你可以在苹果的类似例子中看到它。 https://developer.apple.com/library/mac/samplecode/OverlayView/Introduction/Intro.html

有任何解决方法的提示吗?这似乎是一个错误,但我没有 Apple Dev 帐户来提交错误。

最佳答案

我认为更好的解决方案是实现

- (BOOL)wantsLayer

并返回NO.

Apple 显然已经在 10.9 中更改了 NSScrollView,因此它分层绘制 - 以获得特殊的滚动效果或速度,或者可能只是为了给我们一些事情做,因为我们都工作不足。这会影响 NSTextViews、NSTableViews 和 PDFViews 等。我见过很多情况(例如,我的应用程序的主文档 View )这很好,但在某些情况下它会变得非常糟糕。两个示例:一个调整大小的首选项面板,当您更改 Pane 时动画淡入/淡出,以及一个包含可以折叠的部分的详细 View 。在后一种情况下,如果您在 10.9 中单击表格 View ,表格 View 会消失,然后如果您打开折叠的部分,它会重新出现倒置。

通过拒绝使用上面提到的层,你拒绝参与这种疯狂并迫使 ScrollView 以旧方式绘制。

关于objective-c - NSScrollView 叠加小牛,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20007884/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com