Ios SwiftUI-使用列表时视图添加到窗口层次结构的计时
我正在为iPhone和iPad创建一个SwiftUI应用程序,它从一个列表开始。每个条目表示用户可以转换到的不同视图。每个视图都可以使用解释,所以我想在用户第一次导航到它们时显示一个。我试图用Ios SwiftUI-使用列表时视图添加到窗口层次结构的计时,ios,swift,swiftui,Ios,Swift,Swiftui,我正在为iPhone和iPad创建一个SwiftUI应用程序,它从一个列表开始。每个条目表示用户可以转换到的不同视图。每个视图都可以使用解释,所以我想在用户第一次导航到它们时显示一个。我试图用全屏来显示这个“简介视图” 但当全屏封面试图显示时,我得到了以下信息,因此介绍视图从未显示: 2020-10-22 09:55:05.587361-0700 test[81095:3217286] [Presentation] Attempt to present <_TtGC7SwiftUI22Sh
全屏
来显示这个“简介视图”
但当全屏封面试图显示时,我得到了以下信息,因此介绍视图从未显示:
2020-10-22 09:55:05.587361-0700 test[81095:3217286] [Presentation] Attempt to present
<_TtGC7SwiftUI22SheetHostingControllerVS_7AnyView_: 0x7f883e51bcc0> on
<_TtGC7SwiftUI41StyleContextSplitViewNavigationControllerVS_14NoStyleContext_: 0x7f883e819a00>
(from <_TtGC7SwiftUIP13$7fff562fec9428DestinationHostingControllerVS_7AnyView_: 0x7f883e4169b0>)
whose view is not in the window hierarchy.
现在有点早,在视图中显示激活全屏,如下所示(使用Xcode 12/iOS 14测试)
现在有点早,在视图中显示激活全屏,如下所示(使用Xcode 12/iOS 14测试)
感谢阿斯佩里;它确实有效。不过我很好奇,为什么原始代码(即没有出现的
onAppear
)不能在iPhone上运行,而在列表中呢?我看到的每一个全屏封面的例子都让我觉得它应该是这样的。这仅仅是一个新的API不稳定吗?谢谢Asperi;它确实有效。不过我很好奇,为什么原始代码(即没有出现的onAppear
)不能在iPhone上运行,而在列表中呢?我看到的每一个全屏封面的例子都让我觉得它应该是这样的。这仅仅是一个新的API不稳定吗?
struct ComplicatedView: View {
@State private var showingCover = false
var body: some View {
DetailsOfComplicatedView()
.fullScreenCover(isPresented: $showingCover, content: {
TutorialView()
})
.onAppear { self.showingCover = true }
}
}