我正在尝试将图像裁剪为不规则形状,但我需要使被移除的区域透明。
UIView 的内部子类
CALayer *myLayer = [CALayer layer];
CAShapeLayer *mask = [CAShapeLayer layer];
myLayer.frame = self.bounds;
myLayer.contents = (id)[self.picture CGImage];
mask.path = path;
myLayer.mask = mask;
[self.layer addSublayer:myLayer];
这将适当地裁剪图像,但视图的背景颜色是白色的,因此仍然可见。我试过让其他图层透明,但没有奏效。
(self 和 subview 都指同一个视图)
[self layer].backgroundColor = [UIColor clearColor].CGColor //no change
[self layer].opacity = 0; //makes entire view transparent
subView.backgroundColor = [UIColor clearColor]; // entire view becomes transparent
是否可以创建我想要达到的效果?