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