0

When we use the old way of making the navigation bar translucent or opaque using isTranslucent property on the navigation bar, the view's safeAreaInset returns some value other than 0 for the translucent navigation bar and viceVersa.

But this behaviour is not seen when using the below code as pe new iOS 13 SDK

let appearance = UINavigationBarAppearance()
    appearance.configureWithOpaqueBackground()
    appearance.backgroundColor = UIColor.systemRed
    appearance.titleTextAttributes = [.foregroundColor: UIColor.lightText] // With a red background, make the title more readable.
    navigationItem.standardAppearance = appearance
    navigationItem.scrollEdgeAppearance = appearance
    navigationItem.compactAppearance = appearanc

For this code i am still seeing safeAreaInset.top > 0.

Please help me to understand this behaviour. And how to get inset.top as 0 with new UINavigationBarAppearance api.

the monk
  • 389
  • 4
  • 14

1 Answers1

0

Answering my own question: Using isTranslusent with Appearance API helped me to achieve the old behavior.

As appearance.configureWithOpaqueBackground() only make the bar appearance opaque.

the monk
  • 389
  • 4
  • 14