一直在玩 SwiftUI 并理解 BindableObjects
的概念等到目前为止(至少我希望我这样做)。
我遇到了一个愚蠢的问题,我似乎无法找到答案:
如何初始化 @Binding
多变的?
我有以下代码:
struct LoggedInView : View {
@Binding var dismissView: Bool
var body: some View {
VStack {
Text("Hello World")
}
}
}
在我的预览代码中,我想传递
Binding<Bool>
类型的参数:#if DEBUG
struct LoggedInView_Previews : PreviewProvider {
static var previews: some View {
LoggedInView(dismissView: **Binding<Bool>**)
}
}
#endif
我将如何初始化它?试过:
Binding<Bool>.init(false)
Binding<Bool>(false)
甚至:
@Binding var dismissView: Bool = false
但没有一个工作......有什么想法吗?
最佳答案
当您使用 LoggedInView
在您的应用程序中,您确实需要提供一些绑定(bind),例如 @State
从以前的 View 或 @EnvironmentObject
.
对于 PreviewProvider
的特殊情况如果您只需要一个固定值,您可以使用 .constant(false)
例如。
#if DEBUG
struct LoggedInView_Previews : PreviewProvider {
static var previews: some View {
LoggedInView(dismissView: .constant(false))
}
}
#endif
关于ios - SwiftUI @Binding 初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56685964/