【发布时间】:2021-09-25 21:19:56
【问题描述】:
有两种方法可以在我的代码中显示 LoginView
- 在 A 视图中,使用 navigationLink
NavigationLink(destination: LoginView()) {
Text(“To login")
}
- 在 B 视图中,使用 .sheet
.sheet(isPresented: $viewModel.isShowingSheet) {
LoginView()
}
在LoginView 中,如果LoginView 以表格形式呈现,我想显示我的Banner,所以我使用了presentationMode。
struct LoginView: View {
@Environment(\.presentationMode) var presentationMode
var body: some View {
if presentationMode.wrappedValue.isPresented {
Banner()
}
}
}
但在两种情况下都会显示横幅(导航链接和工作表)
有什么好方法可以检查视图是否由工作表呈现?还是我必须使用自己的属性注入演示样式?
【问题讨论】:
标签: ios swift swiftui navigation modal-dialog