CALayer中的mask属性

以前我们经常使用layer.cornerRadius为View切圆角

            view.layer.cornerRadius = 5;

但是有时候你会发现你设置了圆角但是图形并没有展示为切圆角后的样子所以你又加上了

           view.layer.masksToBounds = YES;

这样就可以解决了。

Mask属性介绍

Mask平时用的最多的是masksToBounds 吧. 其实除此以外Mask使用场景很多,看完之后你会发现好真是好用的不要不要的...

先来了解下Mask属性到底是什么?

Mask 英文解释是蒙板/面罩,平时我们称为蒙层. 在苹果官方文档里如下图,意思是Mask是一个可选的Layer,它可以是根据透明度来掩盖Layer的内容.
所以现在你应该意识到layer设置圆角与maskToBounds应该是通过遮罩来实现了圆角;

mask.jpg

github上又看到个不错的动画,如图:

CALayer中的mask属性_第1张图片
1616356019-0.gif

这个动画就是通过mask实现的 https://github.com/rounak/RJImageLoader

你可能感兴趣的:(CALayer中的mask属性)