@interface ViewController () @property (nonatomic, weak) IBOutlet UIImageView *imageView; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; //create mask layer CALayer *maskLayer = [CALayer layer]; maskLayer.frame = self.layerView.bounds; UIImage *maskImage = [UIImage imageNamed:@"Cone.png"]; // 带有alpha值的图片 maskLayer.contents = (__bridge id)maskImage.CGImage; //apply mask to image layer self.imageView.layer.mask = maskLayer; // 需要蒙版效果的图片 } @end
CALayer mask layer mask place is really powerful map is not limited to a static map. There are no layers formed can be used as mask
property, which means that your mask can even be animated by the code generated in real time.