Maz*_*yod 1 macos cocoa subview calayer
简单地说,我有NSView一堆子视图.在awakeFromNib方法中(在视图的控制器内),我决定添加以下内容:
[_backgroundImageView setWantsLayer:YES];
[[_backgroundImageView layer] setShadowOpacity:1.0f];
[[_backgroundImageView layer] setShadowOffset:NSMakeSize(-3, -3)];
Run Code Online (Sandbox Code Playgroud)
backgroundImageView位于所有子视图的后面.但是,当我添加前面的代码时,它会正确绘制阴影,但也会将backgroundImageView绘制在所有其他图层之上.为什么?我怎么能解决这个问题?
好吧,当我撕开我的头发时,幸运的是我在撕开最后一根头发之前找到了解决方案.
使用界面构建器(或仅setWantsLayer:用于superview的代码).
我在Xcode中打开了nib文件,并使用了imageView的图层属性.转出来我也应该为superview启用图层(self.view).不仅如此,我还应该收紧imageView的框架,否则即使将其设置为"按比例向上或向下",它也会"独立地"缩放.
和平...
| 归档时间: |
|
| 查看次数: |
2304 次 |
| 最近记录: |