![](/img/trans.png)
[英]How to push a new root view using SwiftUI without NavigationLink?
[英]SwiftUI Push View with NavigationLink from modal view
我通过按下“呈现我的模态”按钮来呈现带有fullScreenCover
的模态视图:
struct ContentView: View {
@State var presentMyModal = false
var body: some View {
Text("Hello, world!")
.fullScreenCover(isPresented: $presentMyModal) {
MyModalView()
}
Button(action: { presentMyModal = true },
label: { Text("present my modal")})
}
}
然后我想从这个模式中使用NavigationLink
推送一个新视图:
struct MyAlertView: View {
@State var pushNavigationLinkedView = false
var body: some View {
Text("MyAlertView")
.padding()
Button(action: { pushNavigationLinkedView = true },
label: { Text("push navigation linked view")})
NavigationLink(destination: NavigationLinkedView(),
isActive: $pushNavigationLinkedView) {
EmptyView()
}
}
}
这是我的NavigationLinkedView
:
struct NavigationLinkedView: View {
var body: some View {
Text("NavigationLinkedView")
.padding()
}
}
但是当我按下“推送导航链接视图”按钮时没有任何反应。
那么苹果指南是否允许从模态视图推送带有NavigationLink
的视图? 如果是,最好的方法是什么?
在 iOS15 和 XCode 13 上测试
那么 Apple 指南是否允许从模态视图推送带有
NavigationLink
的视图?
是的。 只需确保在MyAlertView
的底部有一个NavigationView
。 模态表创建一个新的视图层次结构,而NavigationLink
仅在上面的层次结构中某处存在NavigationView
时才起作用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.