我正在为 iPad 开发 iOS 应用程序。我想用黑白图像遮盖 UIView。所以图像的黑色部分就是您可以看到的 View 。
如果尝试了如下所示的不同代码,但它们不起作用......
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是:
感谢您的帮助!
最佳答案
有关 CALayer mask
属性的 Apple 文档:
An optional layer whose alpha channel is used as a mask to select between the layer's background and the result of compositing the layer's contents with its filtered background.
所以你应该修复图像的 Alpha channel 。黑色像素应该是不透明的,白色像素应该是完全透明的。
关于objective-c - 使用 UIImage 黑白 iOS 屏蔽 UIView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14014422/