Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何用另一个透明的CALayer遮罩一个CALayer?_Ios_Calayer_Quartz Graphics_Mask - Fatal编程技术网

Ios 如何用另一个透明的CALayer遮罩一个CALayer?

Ios 如何用另一个透明的CALayer遮罩一个CALayer?,ios,calayer,quartz-graphics,mask,Ios,Calayer,Quartz Graphics,Mask,仅当我将cornerRadius属性设置为要遮罩的层时,我才能够这样做 我正在努力实现: 我看到的是整个蓝色 全背景颜色为红色的CALayer maskLayer,比第一个小的CALayer(CGRectInset(redLayer.frame,20,20)) redLayer.mask=maskLayer [blueView.layer addSublayer:redLayer] 现在我希望只有红色的边框(红层),中间是蓝色的(因为blueView是蓝色的)。这个蓝色部分是maskLayer的

仅当我将cornerRadius属性设置为要遮罩的层时,我才能够这样做

我正在努力实现:

  • 我看到的是整个蓝色
  • 全背景颜色为红色的CALayer
  • maskLayer,比第一个小的CALayer(CGRectInset(redLayer.frame,20,20))
  • redLayer.mask=maskLayer
  • [blueView.layer addSublayer:redLayer]
  • 现在我希望只有红色的边框(红层),中间是蓝色的(因为blueView是蓝色的)。这个蓝色部分是maskLayer的大小/形状(并且是透明的,所以我应该看到蓝色)


    我在这里走对了吗?

    maskLayer
    必须在上面设置一些颜色。

    maskLayer
    必须在上面设置一些颜色