我似乎在使用CALayer添加蒙版方面遇到了困难。我只是想给UIImageView添加一个蒙版。这是我的代码:
CALayer *maskLayer = [CALayer layer];
UIImage *mask = [UIImage imageNamed:@"mask.png"];
maskLayer.contents = mask;
UIImageView *viewToMask = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 1024, 768)];
viewToMask.image = [UIImage imageNamed:@"picture.png"];
viewToMask.layer.mask = maskLayer;
[self.view addSubview:viewToMask];
Mask.png是一张黑色图片,中间有一个透明的圆形区域(这样使用蒙版正确吗?)。我不确定问题出在哪里,也许是在maskLayer.contents
,因为它应该是CGImageRef
类型,但是当我将其设置为mask.CGImage
时会出错,或者通过一个局部变量CGImageRef = mask.CGImage
。无论如何,现在的设置没有报错,所以我希望没问题。
是否有人知道发生了什么情况,或者如何正确地使用CALayers设置蒙版?谢谢。
maskLayer
的bounds
。 - Lily Ballard