ios - 如何解决这个边界问题

标签 ios swift

我使用的是边框阴影,在 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)

图像:

Image

最佳答案

将添加阴影的代码移至 layoutSubviews

关于ios - 如何解决这个边界问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55447596/

相关文章:

swift - 正确的缓冲区大小

ios - 如何根据 HTML 内容动态更改 UIWebView 的高度?

objective-c - 为什么这个 subview 没有被删除?

ios - 在 AppDelegate 的 UI Bootstrap 代码中选择 Root View Controller (与 viewDidLoad 相比)

ios - 在 IOS 中显示警报时,键盘不会从 View 中退出

swift - 使用 Swift 闭包。递归?

ios - 在执行下一行代码之前等待两个异步完成函数完成

ios - 如何在 Swift 4 中从自定义类导航到 UIViewController

iphone - WCF Json解析

ios - 如何轻松地将函数四舍五入到最接近的百分之一