2

我正在为 iPad 开发 iOS 应用程序。我想用黑白图像掩盖 UIView 。所以图像的黑色部分是您可以看到的视图。

如果尝试以下不同的代码,但它们不起作用......

UIImage *_maskingImage = [UIImage imageNamed:@"ipadmask.jpg"];
CALayer *_maskingLayer = [CALayer layer];
_maskingLayer.frame = vistafunda.bounds;
[_maskingLayer setContents:(id)[_maskingImage CGImage]];
[vistafunda.layer setMask:_maskingLayer];
vistafunda.layer.masksToBounds = YES;

他们的 ipadmask.jpg 是这样的:在此处输入图像描述

谢谢你的帮助!

4

1 回答 1

2

关于 CALayermask属性的苹果文档:

一个可选层,其 alpha 通道用作蒙版,以在层的背景和将层的内容与其过滤背景合成的结果之间进行选择。

因此,您应该修复图像的 Alpha 通道。黑色像素应该是不透明的和白色的 - 完全透明。

于 2012-12-23T20:44:14.163 回答