iOS中一行代码实现 UIView 镂空效果

2020-01-21 07:42:20王旭
maskView 是下面这样,让我们来看下,转换过程中遮罩图每一步的变化。

iOS,代码,UIView,镂空

注:为了更直观的效果,图片中透明的部分用灰白相间格子来表示(以下相同)。

1、将 maskView 转化为 UIImage


UIGraphicsBeginImageContextWithOptions(self.bounds.size, NO, [UIScreen mainScreen].scale);
CGContextTranslateCTM(UIGraphicsGetCurrentContext(),
           view.frame.origin.x,
           view.frame.origin.y);
[view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

这一步拿到了 maskView 对应的