[英]Corner radius and shadow on a view suddenly not working
多个放置在我的应用程序中,我有阴影和角半径的视图。 我尝试添加一个新视图,突然间我重用的代码不再起作用了。 我只能设置角半径或阴影,具体取决于我为masksToBounds
。 这是我用于错误视图和其他视图的代码:
itemCountLabel.layer.masksToBounds = false
itemCountLabel.layer.cornerRadius = itemCountLabelSize / 2.0
itemCountLabel.layer.shadowColor = UIColor.black.cgColor
itemCountLabel.layer.shadowOpacity = 0.25
itemCountLabel.layer.shadowRadius = 5
itemCountLabel.layer.shadowOffset = CGSize(width: 4, height: 4)
contentView.addSubview(itemCountLabel)
不可能像您尝试的那样实施。 阴影始终应用在UIView
的边界之外,并且如果不屏蔽UIView
的边界,则cornerRadius
将不可见。 因此,最好在UILabel
后面添加一个UIView
UILabel
用该函数编写一个UIView
的扩展,它返回一个UIView
包含要应用阴影的视图。
在这里,您需要使用两个不同的视图,一个用于圆角,另一个用于显示阴影,因为由于 Mask To Bounds 和 Clip To Bounds 功能,这两个属性不能一起使用。 由于角半径需要裁剪可能包含阴影的边缘。
因此,要让这两件事都在您想要圆角的视图后面使用阴影视图。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.