objective-c - 如何将 CAMetalLayer 与 NSView 一起使用?

标签 objective-c macos calayer metal metalkit

如何使用CAMetalLayer?我尝试查看一些示例,但是有些执行了 NSView.layer.addSubLayer(MetalLayer) ,其他一些执行了 NSView.layer = MetalLayer ,其他一些设置了 NSView.SetWantsLayer = true 在执行 NSView.layer = MetalLayer 之前(但执行 NSView.SetWantsLayer = true 接缝已经为 View 分配了一个图层)等,所以我不'不知道该如何选择。另外,当我执行 NSView.layer = MetalLayer 时,我的 Drawrect Metal 不再被调用

最佳答案

在AppKit中,您可以通过设置 View 的wantLayer属性来支持 View 层。应用程序显式创建一个 CAMetalLayer 对象并将其分配给 View 的图层属性。

self.wantsLayer = YES;
self.layer = [CAMetalLayer layer];

关于objective-c - 如何将 CAMetalLayer 与 NSView 一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59112245/

相关文章:

ios - 如何通过邮件链接打开 iPad/iPhone 应用程序?

iphone - 如何在 iOS 上拍照并保存在 SQLite 数据库中

swift - OSX开发,Xib菜单和storyboard Window Controller如何关联?

macos - 你如何指定哪个 NSMenu 是 XIB 文件中的主菜单?

ios - 从 Swift 中的另一个 UIView 中减去 UIView

uiview - 更改 CALayer 的大小也会更改先前添加的图层大小

ios - 在填充的白色圆圈 (UIButton) 内创建一个黑色细圆圈(未填充)

ios - 将 "Final"NSOperation 添加到操作次数不确定的队列中

ios - 触摸条形按钮项目的内部

visual-studio-2010 - 在MAC OS X上打开Visual Studio项目