maskView动画
maskView(maskLayer)基本原理
maskView(maskLayer)可类比于多张png图片的折叠遮罩
maskView是iOS8以上才有的,如果兼容低版本,用maskLayer替换
//底图
self.baseImageView = [[UIImageView alloc] initWithFrame:CGRectMake(20, 20, width, width)];
self.baseImageView.image = [UIImage imageNamed:@"base"];
[self.view addSubview:self.baseImageView];
//mask
self.maskImageView = [[UIImageView alloc] initWithFrame:CGRectMake(20, 20 + width +20, width, width)];
self.maskImageView.image = [UIImage imageNamed:@"mask"];
[self.view addSubview:self.maskImageView];
//使用maskView 叠加在一起
self.addImageView = [[UIImageView alloc] initWithFrame:CGRectMake(20, 20+ (width+20) * 2, width, width)];
[self.view addSubview:self.addImageView];
//叠加
self.addImageView.image = [UIImage imageNamed:@"base"];
UIImageView *mask = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, width, width)];
mask.image = [UIImage imageNamed:@"mask"];
/**
* @brief maskView不能用addSubView添加遮罩
*/
self.addImageView.maskView = mask;
//maskView 等价于低版本的mask
//self.addImageView.layer.mask
//mask 是CALayer类型,定义一个CALayer赋值到mask上就完成了。
// CALayer *layer = [CALayer layer];