我试图制作一个不透明的简单视图,除了中心给定直径的圆。它意味着覆盖相机,因为他们不希望整个屏幕显示,只需将您的脸部置于圆圈中并拍摄照片。
相反的是一些简单的代码行 - 中间有一个不透明圆圈的清晰视图 - 但我无法弄清楚如何做相反的事情。
任何帮助或指示赞赏......
答案 0 :(得分:1)
听起来你只想要一个简单的面具。你可以使用Ash的method。
来做到这一点UIImage *_maskingImage = [UIImage imageNamed:@"mask"];
CALayer *_maskingLayer = [CALayer layer];
_maskingLayer.frame = theView.bounds;
[_maskingLayer setContents:(id)[_maskingImage CGImage]];
[theView.layer setMask:_maskingLayer];
您需要的图像是一个圆形,其透明度渐变从边缘的黑色到中心的透明。请记住您使用的文件类型并非所有支持透明度(如jpeg)。
或者,您可以使用UIImageView并使图像中包含渐变。
答案 1 :(得分:0)
如何使用视图层的mask属性?
尝试这样的事情(2个视图应该具有相同的大小):
#import <QuartzCore/QuartzCore.h>
UIView *blackCircleOnClearBackground;
UIView *cameraView;
cameraView.layer.mask = blackCircleOnClearBackground.layer;