美文网首页
Swift:使用UIBezierPath添加圆角后视图底部出现白

Swift:使用UIBezierPath添加圆角后视图底部出现白

作者: 蛋哥是只猫 | 来源:发表于2022-02-10 19:52 被阅读0次

    在项目中使用UIBezierPath给tableView 中cell添加圆角,出现了一条白线。

                let bezierPath = UIBezierPath(roundedRect: CGRect(x: 0, y: 0, width: UIScreen.main.bounds.width, height: cell.contentView.frame.size.height), byRoundingCorners: .topRight, cornerRadii: CGSize(width: 10, height: 10))
                let shapeLayer = CAShapeLayer()
                shapeLayer.frame = cell.contentView.bounds
                shapeLayer.path = bezierPath.cgPath
                cell.contentView.layer.mask = shapeLayer
    

    效果:

    Simulator Screen Shot - iPhone 13 - 2022-02-10 at 19.44.11.png
    解决方案:
                cell.contentView.layer.rasterizationScale = UIScreen.main.scale
                cell.contentView.layer.shouldRasterize = true
                cell.contentView.layer.maskedCorners = [.layerMaxXMinYCorner]
                cell.contentView.layer.cornerRadius = 10
    

    修改后效果:

    Simulator Screen Shot - iPhone 13 - 2022-02-10 at 19.44.30.png

    相关文章

      网友评论

          本文标题:Swift:使用UIBezierPath添加圆角后视图底部出现白

          本文链接:https://www.haomeiwen.com/subject/nflokrtx.html