如题需求,试过增加渐变layer层,和添加阴影效果,但都是把原来的视图遮住了,效果都不理想。看文档中发现CALayer中有这样一个属性:
@property(nullable, strong) CALayer *mask;
把它设置为透明度渐变的效果即可实现视图的透明度的渐变需求,而且以此方法设置透明度并不会影响子视图的透明度。下面以一个图片的透明度渐变写了一个demo:
首先添加图片:
- (void)viewDidLoad {
[super viewDidLoad];
//为了方便查看透明度效果,给背景一个颜色
self.view.backgroundColor = [UIColor redColor];
_myImgView = [[UIImageView alloc]init];
_myImgView