将阴影添加到NSImageView

Kev*_*tre 5 macos cocoa objective-c

我有一个NSImageView并且想要添加阴影.我已尝试以编程方式执行以下操作:

NSShadow *shadow = [[[NSShadow alloc] init] autorelease];
[shadow setShadowBlurRadius:4.0f];
[shadow setShadowOffset:CGSizeMake(4.0f, 4.0f)];
[shadow setShadowColor:[NSColor blackColor]];

[view setShadow:shadow];
Run Code Online (Sandbox Code Playgroud)

但它不会出现.有任何想法吗?谢谢.

Jon*_*pan 9

您必须设置阴影的参数.默认情况下,它全为零,因此对视图没有可见效果.

-setShadowColor:,-setShadowRadius:-setShadowOffset:NSShadow,我相信.

  • 您的观点是否还有"CALayer"支持?如果没有,您必须通过在设置阴影之前向视图发送`setWantsLayer:`(值为'YES`)来启用Core Animation支持. (2认同)