我的环境值如下:
@Environment(\.isPresented) var isPresented: Bool
Run Code Online (Sandbox Code Playgroud)
该环境值定义如下:
private struct IsPresented: EnvironmentKey {
static let defaultValue: Bool = false
}
extension EnvironmentValues {
var isPresented: Bool {
get { self[IsPresented.self] }
set { self[IsPresented.self] = newValue }
}
}
extension View {
func isPresented(_ isPresented: Bool) -> some View {
environment(\.isPresented, isPresented)
}
}
Run Code Online (Sandbox Code Playgroud)
我想在我的一个视图中读取此环境值,以决定是否将视图显示为全屏。然而,这行代码不起作用:
.fullScreenCover(isPresented: self.$isPresented) {
// It says there's no such member in my view.
Run Code Online (Sandbox Code Playgroud)
因此,我的问题是,由于 .fullScreenCover 需要绑定,因此如何将环境值转换为绑定?
swiftui ×1