我正在尝试使用Cocoa创建一个小的Finder克隆。我将源列表表视图(用作边栏)和标准表视图放在由NSSplitView
控制的NSSplitViewController
内。
不幸的是,当我运行此命令时,标准表格视图的白色背景绘制在窗口的右下角,结果是一个非圆角:
我可以通过不使用NSSplitViewController
来避免此问题,无论是使用标准笔尖文件还是情节提要来获得所需的结果:
但是……我真的很想使用NSSplitViewController
。有什么办法可以防止这种情况的发生?
Here is the Xcode workspace with the projects截屏。
最佳答案
我已经看到了这样的问题,这似乎是真正的错误。但是有解决方法。您需要确保NSSplitViewController在由CA层支持的视图中呈现自己。因此,为了在您的项目中做到这一点,我在容器视图中添加了中间人视图控制器。然后,将拆分视图放置在此容器视图的内部。最后,将容器视图的父视图设置为支持层。这是图片:
之后,我可以看到一切正常:
另外请注意:确保在确实需要时才使用1000优先级的约束。我通常使用750(我也固定了它)。否则,您会收到很多关于不满意的警告。
这是您的固定项目:
https://github.com/emankovski/splitviewroundcorrners
关于macos - NSSplitViewController导致包含的 View 在窗口角上绘制,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36464339/