I have created a simple view.Xib file, if internet connection interrupts or disconnects for any reason my view will be displayed at the bottom.
For this I have set programmatically NSLayoutConstraint
.
- If I use
SafeAreaLayout
it gives spaces at the bottom of every new iPhone devices like (iPhone XR, 11, Pro or Pro max). - If I don't use
SafeAreaLayout
then view at bottom not properly displayed.
In all other devices (iPhone 7, 8 or plus) with SafeAreaLayout
it works properly.
How can I set view properly at the bottom without space?
My Code:
let viewW = offlineView.fromNib()
view.addSubview(viewW)
viewW.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
viewW.leadingAnchor.constraint(equalTo: self.view.leadingAnchor),
viewW.trailingAnchor.constraint(equalTo: self.view.trailingAnchor),
viewW.topAnchor.constraint(equalTo: self.view.bottomAnchor,constant: -25),
viewW.bottomAnchor.constraint(equalTo: self.view.bottomAnchor),
])
let viewW = offlineView.fromNib()
view.addSubview(viewW)
viewW.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
viewW.leadingAnchor.constraint(equalTo: self.view.safeAreaLayoutGuide.leadingAnchor),
viewW.trailingAnchor.constraint(equalTo: self.view.safeAreaLayoutGuide.trailingAnchor),
viewW.topAnchor.constraint(equalTo: self.view.safeAreaLayoutGuide.bottomAnchor,constant: -25),
viewW.bottomAnchor.constraint(equalTo: self.view.safeAreaLayoutGuide.bottomAnchor),
])
Screenshots attached:
SafeArea:
Without SafeArea: