我试图在layer
的{{1}}上设置阴影,但是正在我的视图的子视图上绘制图层,而不是视图本身。可能导致这种情况的原因是什么?
有问题的视图及其所有子视图都是图层支持的。除了其中一个子视图外,所有子视图都是带图像的按钮(NSView
) - 另一个是通过NSButton
呈现的自定义视图。
drawRect:
我也尝试通过self.layer.shadowColor = [[NSColor blackColor] colorWithAlphaComponent:0.9].CGColor;
self.layer.shadowRadius = 2;
self.layer.shadowOffset = NSMakeSize(0, -1);
self.layer.shadowOpacity = 0.9;
设置阴影,结果相同。
答案 0 :(得分:1)
事实证明,如果您在NSView
的{{1}}上设置了阴影,则只有在视图具有layer
实现时才会绘制该视图,该实现会绘制不透明的内容。否则它会绘制所有视图的子视图。
怪异。