ios - 如何用另一个透明的 CALayer 遮盖 CALayer?

标签 ios calayer quartz-graphics mask

如果我将 cornerRadius 属性设置为我想要 mask 的图层,我只能设法做到这一点。

我正在努力实现:

  1. 整个蓝色的 UIView。
  2. 全背景为红色的 CALayer。
  3. maskLayer,比第一个小的CALayer (CGRectInset(redLayer.frame, 20, 20))
  4. redLayer.mask = maskLayer
  5. [blueView.layer addSublayer:redLayer]

现在我想要只有红色边框 (redLayer),中间是蓝色的(因为 blueView 是蓝色的)。这个蓝色部分是 maskLayer 的大小/形状(并且是透明的,所以我应该看到蓝色)。

我走在正确的轨道上吗?

最佳答案

maskLayer 必须设置一些颜色。

关于ios - 如何用另一个透明的 CALayer 遮盖 CALayer?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12767313/

相关文章:

ios - 在 PhoneGap/Cordova 中安排本地通知在 iOS 模拟器上不起作用

ios - 如何初始化代码在 Swift 4 中生成的按钮边框

ios - 背景颜色为清晰颜色时不显示阴影

iphone - iPhone SDK 上的 PDF 操作

具有给定颜色的 IoS Cocoa 填充区域

iphone - 旋转 MKMapView,同时保持初始方向的引脚?

ios - UIPinchGestureRecognizer 向内捏 "slower"

ios - 如何在 iOS 中简化单个复杂的 UIBezierPath 多边形

iphone - CALayer 不在设备上渲染背景颜色,在模拟器中工作

ios - XCode 6 中两个按钮可以相互接触吗?