SwiftUI:工作表在提交后立即被驳回
我想有一个全屏的SwiftUI视图,导航栏上有一个按钮,上面有一个SwiftUI表 不幸的是,编译器说:“目前,只支持显示一张工作表。 当当前提交的工作表被驳回时,将提交下一份工作表。” 这是我的代码:SwiftUI:工作表在提交后立即被驳回,swift,swiftui,dismiss,contentview,Swift,Swiftui,Dismiss,Contentview,我想有一个全屏的SwiftUI视图,导航栏上有一个按钮,上面有一个SwiftUI表 不幸的是,编译器说:“目前,只支持显示一张工作表。 当当前提交的工作表被驳回时,将提交下一份工作表。” 这是我的代码: struct ContentView: View { var body: some View { EmptyView().fullScreenCover(isPresented: .constant(true), content: { FullSc
struct ContentView: View {
var body: some View {
EmptyView().fullScreenCover(isPresented: .constant(true), content: {
FullScreenView.init()
})
}
}
struct FullScreenView: View{
var body: some View {
NavigationView{
MasterView()
}.navigationViewStyle(DoubleColumnNavigationViewStyle())
}
}
struct MasterView: View {
@State private var showingSheet = false
var body: some View {
Form {
Section(header: Text("Header")) {
NavigationLink(destination: UIKitView()) { Text("Hey") }
}
}
.navigationBarItems(trailing:
HStack {
// First Try: Use a Button
Button("Plus"){
showingSheet = true
}.sheet(isPresented: $showingSheet){
AddContentView()
}
// Second Try: Use NavigationLink
NavigationLink(
destination: AddContentView(),
label: {
Image(systemName: "plus.square.fill")
})
})
}
}
问题
我想全屏显示SwiftUI视图,所以我使用fullScreenCover(…)
。有了第一张“工作表”,我就无法呈现第二张工作表,即myAddContentView()
View。有什么办法可以解决这个问题吗?我真的很想把这张纸放在上面:(
谢谢你的帮助
请随意询问其他代码或是否存在歧义。错误消息表示无法同时显示工作表(不要重叠工作表),因此如果要转到视图并再次转到另一个视图,则必须使用NavigationLink,并且只能在结尾处显示。工作表() 或全屏封面() 已编辑:此代码中的图纸未重叠两次
import SwiftUI
struct ContentView: View {
@State private var showingSheet = false
var body: some View {
NavigationView{
Form {
Section(header: Text("Header")) {
NavigationLink(destination: EmptyView()) { Text("Hey") }
}
}
.navigationBarItems(trailing:
HStack {
// First Try: Use a Button
Button("Plus"){
showingSheet = true
}.sheet(isPresented: $showingSheet){
EmptyView()
}
// Second Try: Use NavigationLink
NavigationLink(
destination: EmptyView(),
label: {
Image(systemName: "plus.square.fill")
})
})
}.navigationViewStyle(DoubleColumnNavigationViewStyle())
}
}
p、 s.fullScreenCover()属于该工作表
.fullScreenCover(isPresented: $showingSheet){
AddContentView()
}
import SwiftUI
struct ContentView: View {
@State private var showingSheet = false
var body: some View {
NavigationView{
Form {
Section(header: Text("Header")) {
NavigationLink(destination: EmptyView()) { Text("Hey") }
}
}
.navigationBarItems(trailing:
HStack {
// First Try: Use a Button
Button("Plus"){
showingSheet = true
}.sheet(isPresented: $showingSheet){
EmptyView()
}
// Second Try: Use NavigationLink
NavigationLink(
destination: EmptyView(),
label: {
Image(systemName: "plus.square.fill")
})
})
}.navigationViewStyle(DoubleColumnNavigationViewStyle())
}
}