如何以编程方式设置NSView层
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何以编程方式设置NSView层相关的知识,希望对你有一定的参考价值。
这样做的正确方法是什么?这是我正在尝试的。但是dotLayer上从不调用display:
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
DotLayer *dotLayer = [[DotLayer alloc]init ];
dotLayer.frame= CGRectMake(10, 10, 100, 100);
dotLayer.nDots = 4;
NSView *contentView = window.contentView;
CALayer *layer = [[CALayer alloc]init];
layer.frame = CGRectMake(0,0,200,200);
contentView.layer = layer;
[layer addSublayer:dotLayer];
[dotLayer setNeedsDisplay];
}
DotLayer是CALayer的子类。
答案
你有没有忘记setWantsLayer?
contentView.wantsLayer = true
这通常是个问题!
以上是关于如何以编程方式设置NSView层的主要内容,如果未能解决你的问题,请参考以下文章
如何以编程方式将视图添加到 NSWindow(或 NSView)?
无法关闭在 Interface Builder 中创建的 NSView 实例的剪辑