Since installing Xcode 14, I am now getting the following error message printed in my console:
NavigationLink presenting a value must appear inside a NavigationContent-based NavigationView. Link will be disabled.
My app is structured as follows:
I have View A wrapped in a NavigationView. The Navigation View has a navigation link inside it that links to View B.
I have View B that doesn't have a Navigation View, but has a navigation link to View C. View B inherits the navigation view defined in View A
The warning is printed when I press the back button on View B, popping back to View A. The warning goes away when I wrap View B in a NavigationView, but this of course now displays View B in two Navigation Views, which is not what I want.
I'm unsure why this warning is printing, because View B inherits the NavigationView defined in View A.
I had the same issue. Adding a check for iOS16 and using the new navigationstack if true fixed it for me.
WindowGroup {
if #available(iOS 16.0, *) {
NavigationStack {
ContentView()
}
} else {
// Fallback on earlier versions
NavigationView {
ContentView()
}
}
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With