iOS 镂空蒙版
2017-08-14 本文已影响44人
夏天爱大树
需求要做个椭圆形的镂空的蒙版,因为设计不在,只好自己绘制。
//自定义的一个View,添加到window上。self为自定义的View
//贝塞尔曲线 整个屏幕
UIBezierPath *bpath = [UIBezierPath bezierPathWithRoundedRect:CGRectMake(0, 0, ScreenWidth, ScreenHeight) cornerRadius:0];
//贝塞尔曲线 画一个椭圆
[bpath appendPath:[UIBezierPath bezierPathWithOvalInRect:CGRectMake(0, self.topOffset, self.maskWidth, self.maskHeight)].bezierPathByReversingPath];
//创建一个CAShapeLayer 图层
CAShapeLayer *shapeLayer = [CAShapeLayer layer];
shapeLayer.path = bpath.CGPath;
//添加图层蒙板
self.layer.mask = shapeLayer;