想要了解掩蔽任何层与将层添加为子层之间的确切区别。我已经搜索并找到了一些答案,但无法正确理解。
我发现类似蒙版的东西会导致屏幕外渲染,但是添加子层却不能,所以我们不能只使用addsublayer吗?
我在这里找到了一些东西,但没有得到,所以如果有this的任何示例会有所帮助
更具体:现在让我们说一个layer1
,我想了解以下内容之间的区别:
addSublayer(layer1)
mask = layer1
我们在这里知道,两者都是通过UIView
的主层(如view.layer
答案 0 :(得分:0)
图层-是“超级视图上的下一个视图”,而子层是“超级图层上的下一个视图”。 耶拉里: 视图(超级)->具有视图(超级)->具有图层(超级):[layer1,layer2等]-> layer1(super)->具有sublayers(super)[sublayer1,sublayer2等]。 子层-层次结构中的端点。
一个视图可以有更多的层。层可以有更多子层。但是子层不能有其他子层。
//对不起,我的英语:)
答案 1 :(得分:0)
如果我正确理解了这一点,则将图层添加到视图的顶部,而遮罩将减去当前图层。
如果您有一个渐变图层,则将其添加到视图中,它将遵循指定的渐变方向,可以说是从下到上。但是,如果您添加与蒙版相同的渐变,则将减去该图层,因此,它希望渐变从上到下。您也可以使用蒙版剪切图像中的形状。但是它们非常相似。