Я добавил расширение функции закругления углов внутри UIView
, оно отлично работает на новом устройстве, таком как iPhone XR
, но старое устройство с соотношением сторон 16: 9, например iPhone 8
, iPhone 8 plus
, оно поворачивает только осталось
extension UIView{
func roundCorners(_ corners: UIRectCorner, radius: CGFloat) {
let path = UIBezierPath(roundedRect: self.bounds, byRoundingCorners: corners, cornerRadii: CGSize(width: radius, height: radius))
let mask = CAShapeLayer()
mask.path = path.cgPath
self.layer.mask = mask
}
}
Когда я реализую функцию. внутри UIViewController я вызываю функцию внутри viewDidLayoutSubviews
//ViewController
override func viewDidLayoutSubviews() {
exampleView.roundCorners([.topRight,.topLeft], radius: 20)
}
- , но когда я реализую в классе другой тип, я не могу найти решение, я хочу, чтобы метод заставил взять угол всегда.