SwiftUI @Binding初始化
BindableObjects
到目前为止,我一直在使用SwiftUI并了解etc 的概念(至少我希望我这样做)。
我遇到了一个愚蠢的问题,似乎找不到以下答案:如何初始化@Binding
变量?
我有以下代码:
struct LoggedInView : View { @Binding var dismissView: Bool
var body: some View {
VStack {
Text("Hello World")
}
}
}
在我的预览代码中,我想传递该类型的参数Binding<Bool>
:
#if DEBUGstruct 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
在您的应用中使用时,您确实需要提供一些绑定,例如@State
上一个视图中的或@EnvironmentObject
。
对于PreviewProvider
仅需要固定值的特殊情况,可以使用.constant(false)
例如
#if DEBUGstruct LoggedInView_Previews : PreviewProvider {
static var previews: some View {
LoggedInView(dismissView: .constant(false))
}
}
#endif
以上是 SwiftUI @Binding初始化 的全部内容, 来源链接: utcz.com/qa/431251.html