我试图使它成为当我点击图标时,打开"scoreView()“。当我点击它的时候,现在什么都不起作用。以下是代码:
HStack {
Image(systemName: "arrow.counterclockwise")
NavigationLink(destination: scoreView(scoreTracker: $scoreTracker)) {
Spacer()
Image(systemName: "list.bullet")
}
} 这与我没有navigationView这一事实有关吗?我对此并不熟悉,所以我对此并不十分清楚。
编辑:--我已经添加了一个NavigationView,但是NavigationLink覆盖了一半的屏幕,当点击时,视图只会在那个方块中改变。在单击NavigationLink之前 单击NavigationLink后
HStack {图像(systemName:"arrow.counterclockwise")
NavigationView {
NavigationLink(destination: scoreView(scoreTracker: $scoreTracker)) {
Image(systemName: "list.bullet")
}
}
}发布于 2021-08-28 22:33:38
这与我没有navigationView这一事实有关吗?
是。根据文档
用户单击或点击导航链接以显示NavigationView中的视图。
它将只在NavigationView中工作。如果您没有使用sheet或fullScreenCover,那么请考虑使用它。或者,用ZStack建立自己的覆盖层。
示例NavigationView使用:
struct ContentView: View {
var body: some View {
NavigationView { /// directly inside `var body: some View`
VStack { /// if you have multiple views, make sure to put them in a `VStack` or similar
Text("Some text")
/// `ScoreView` should be capitalized
NavigationLink(destination: ScoreView(scoreTracker: $scoreTracker)) {
Image(systemName: "list.bullet")
}
}
}
}
}https://stackoverflow.com/questions/68968561
复制相似问题