に影を追加する方法を理解しようと、しばらく時間を費やしましたNSView
。今のところ、NSShadow
クラスを使用してこれを達成しようとしています。私のコードは以下です。NSView
サブクラスのカスタム init メソッドでシャドウを作成しようとしています。どう頑張っても影が出ない。
NSShadow *dropShadow = [[NSShadow alloc] init];
[dropShadow setShadowColor:[NSColor blackColor]];
[self setWantsLayer:YES];
[self setShadow:dropShadow];
編集
これが私がそれをやろうとした方法ですCALayer
。
self.layer.shadowOffset = CGSizeMake(10, 10);
self.layer.shadowOpacity = 1.0;
self.layer.shadowRadius = 10.0;
self.layer.shadowPath = [self quartzPathFromBezierPath:[NSBezierPath bezierPathWithRect:frame]];
quartzPathFromBezierPath:
を に変換NSBezierPath
しCGPath
ます。