Я устанавливаю пунктирную границу для моего UIView, который применяется в iPhone 6,7,8.Но если открыть его в iPhone XR, оно будет выглядеть следующим образом.
Мой вид называется camerauiview
Граница, которую я устанавливаю в этой функции, вызывая ее в viewdidload ().
func setupBorder(){
let dashedborder = CAShapeLayer()
dashedborder.strokeColor = #colorLiteral(red: 0.4076032743, green: 0.1454663677, blue: 0.9795397903, alpha: 1)
dashedborder.lineWidth = 2
dashedborder.lineDashPattern = [7 , 7]
dashedborder.frame = camerauiview.bounds
dashedborder.fillColor = nil
dashedborder.path = UIBezierPath(rect: camerauiview.bounds).cgPath
camerauiview.layer.addSublayer(dashedborder)
}
Это так.
Для справки я выделил серый цвет фона, чтобы показать, какую площадь он покрывает.