就我而言, clipstobounds 和 maskstobounds 都执行相同的工作。
我找不到它们之间的任何区别。
有人请解释两者的不同之处。
masksToBounds
扩展到其边界之外的该层的任何子层都将被裁剪到这些边界。在这种情况下,可以将层视为其子层的窗口;窗口边缘以外的任何内容都将不可见。当masksToBounds为NO时,不会发生裁剪。 当此属性的值为true时,Core Animation将创建一个隐式剪贴蒙版,该蒙版与图层的边界匹配并包括任何角半径效果。如果还指定了mask属性的值,则将两个掩码相乘以获得最终的掩码值。
扩展到其边界之外的该层的任何子层都将被裁剪到这些边界。在这种情况下,可以将层视为其子层的窗口;窗口边缘以外的任何内容都将不可见。当masksToBounds为NO时,不会发生裁剪。
当此属性的值为true时,Core Animation将创建一个隐式剪贴蒙版,该蒙版与图层的边界匹配并包括任何角半径效果。如果还指定了mask属性的值,则将两个掩码相乘以获得最终的掩码值。
您可以在API参考中获取更多信息。
clipToBounds
clipsToBounds的用例更多地用于部分位于主视图之外的子视图。例如,我在其父级(矩形)UIView的边缘上有一个(圆形)子视图。如果将clipsToBounds设置为YES,则仅显示一半的圆/子视图。如果设置为“否”,则会显示整个圆圈。刚遇到这个所以想分享