One class i created assign it to your view
. right here i’m utilizing scenedelegate
use it in line with your mission for those who used appdelegate
.
class NotchView: UIView {
override func awakeFromNib() {
guard let scene = UIApplication.shared.connectedScenes.first?.delegate as? SceneDelegate else {return}
let backside = scene.window?.safeAreaInsets.backside ?? 0
if backside > 0 {
self.setHeight(160)
}else{
self.setHeight(120)
}
}
}
add extension for view
top.
extension UIView {
func setHeight(_ h:CGFloat) {
if let c = self.constraints.first(the place: { $0.firstAttribute == .top && $0.relation == .equal }) {
c.fixed = CGFloat(h)
self.superview?.layoutIfNeeded()
}
}
}