首页 文章

如何将NSView转换为CALayer?

提问于
浏览
0

我已经制作了一个视频播放器,图像是在NSView中绘制的 . 有什么方法可以将NSView转换为CALayer吗?我尝试使用 layer-hosting view ,但开发人员文档说 can not add any subviews to layer-hosting view .Anyone可以给我一些建议吗?这段代码可以在OSX 10.6中运行.8,但OSX 10.7和10.8 .

mDisplayView = [[NSView alloc] initWithFrame:NSMakeRect(0, 0, width, height)];
mDisplayLayer = [[CALayer layer] retain];

[mDisplayView setLayer:mDisplayAudioLayer];
[mDisplayView setWantsLayer:YES];
[mDisplayView addSubview:mContentView];
[mRootLayer addSublayer:mDisplayAudioLayer];

视频图像是在 mContentView 上绘制的 . 我只是想找到一种方法将 mContentView 变成 CALayer ,这可能吗?

1 回答

  • 2

    您没有将视图转换为图层 - 您可以通过覆盖 drawRect: 或者将其切换到图层支持的视图并使用CoreAnimation来绘制到视图中 .

    最好从这里开始了解所涉及的基本概念:

    Core Animation Programming Guide

相关问题