我使用的是边框阴影,在 iPhone 6s 之前它都可以正常工作,但在更大的版本中,边框不会出现。
我的层次结构如下: tableView --> cell--> view(parentView)--> 对象
created extension for uiView:
func addViewShadow(offset: CGSize, radius: CGFloat, color: UIColor, opacity: Float, cornerRadius: CGFloat? = nil) {
self.layer.shadowOffset = offset
self.layer.shadowRadius = radius
self.layer.shadowOpacity = opacity
self.layer.masksToBounds = false
self.layer.shadowColor = color.cgColor
if let r = cornerRadius {
self.layer.shadowPath = UIBezierPath(roundedRect: bounds, cornerRadius: r).cgPath
self.layer.cornerRadius = r
// self.clipsToBounds = true
}
}
在类里面使用:
cell.parentView.addViewShadow(偏移量:CGSize.zero,半径:2,颜色:UIColor.darkGray,不透明度:1,cornerRadius:5)
图像:
最佳答案
将添加阴影的代码移至 layoutSubviews
。
关于ios - 如何解决这个边界问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55447596/