层支持的nsview剪辑的子视图

时间:2013-07-12 09:29:18

标签: cocoa calayer nsview

我有一个超过边界的图层支持nsview(通过故事板设置)的子视图。由于某种原因它被削减了。知道为什么会这样吗?

1 个答案:

答案 0 :(得分:1)

我刚刚解决了这个问题。 尽管方法非常简单,但是我浪费了一些时间。

有两件事需要注意。

首先(最重要!!),你应该设置你的winow的contentview.wantsLayer YES;

然后,设置父视图的layer.maskesToBounds NO;

我做了什么:

self.window.contentView.wantsLayer = YES;
 self.testview.layer.backgroundColor = [NSColor clearColor].CGColor;
 self.testview.layer.borderWidth = 3;
 self.testview.layer.borderColor = [NSColor blueColor].CGColor;
 self.testview.layer.masksToBounds = NO;
 NSView *aView = [[NSView alloc]initWithFrame:NSMakeRect(-50, -20, 100, 100)];
 aView.wantsLayer = YES;
 aView.layer.backgroundColor = [NSColor redColor].CGColor;
 [self.testview addSubview:aView];

效果

enter image description here

好运