func addTransparencyView(with tempPath: UIBezierPath?) -> CAShapeLayer? { let path = UIBezierPath(rect: UIScreen.main.bounds) if let aPath = tempPath { path.append(aPath) } path.append(tempPath1) path.usesEvenOddFillRule = true let shapeLayer = CAShapeLayer() shapeLayer.path = path.cgPath shapeLayer.fillColor = UIColor.black.cgColor //其他颜色都可以,只要不是透明的 shapeLayer.fillRule = .evenOdd return shapeLayer }
var tempPath = UIBezierPath(roundedRect: CGRect(x: 120, y: 150, width: 100, height: 50), byRoundingCorners: [.topLeft, .topRight, .bottomRight, .bottomLeft], cornerRadii: CGSize(width: 4, height: 4)) var guideView = UIView(frame: UIScreen.main.bounds) guideView.backgroundColor = UIColor.black guideView.alpha = 0.6 guideView.layer.mask = addTransparencyView(with: tempPath) UIApplication.shared.keyWindow?.addSubview(guideView)
标签:
iOS开发 抠图