问题
I can not get a NavigationLink
in SwiftUI. The button is visible, but unfortunately this is gray and can not be clicked.
Here is the code:
import SwiftUI
import Combine
struct ContentView: View {
var body: some View {
NavigationView{
NavigationLink(destination: Text("Detail for Test")) {
Text("Test")
}.navigationBarTitle("Select a user")
}
}
}
Does anyone know the problem?
回答1:
It seems the problem is related to the fact that you have added the NavigationLink
inside the NavigationView
without defining a layout
In fact, if you add a VStack
, everything works correctly
struct ContentView: View {
var body: some View {
NavigationView {
VStack {
NavigationLink(destination: Destination()) {
Text("Test")
}
}.navigationBarTitle("Select a user")
}
}
}
struct Destination: View {
var body: some View {
Text("Ok")
}
}
回答2:
The error is related to a missing view in your NavigationLink statement.
...
NavigationLink(destination: NeedsAView()) {
Text("Test")
}.navigationBarTitle("Select a user")
...
struct NeedsAView: View {
var body: some View {
Text("Hello Destination")
}
}
来源:https://stackoverflow.com/questions/57571107/swiftui-navigationlink-button-is-gray-and-untouchable