SwiftUI @Binding初始化

BindableObjects到目前为止,我一直在使用SwiftUI并了解etc 的概念(至少我希望我这样做)。

我遇到了一个愚蠢的问题,似乎找不到以下答案:如何初始化@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在您的应用中使用时,您确实需要提供一些绑定,例如@State上一个视图中的或@EnvironmentObject

对于PreviewProvider仅需要固定值的特殊情况,可以使用.constant(false)

例如

#if DEBUG

struct LoggedInView_Previews : PreviewProvider {

static var previews: some View {

LoggedInView(dismissView: .constant(false))

}

}

#endif

以上是 SwiftUI @Binding初始化 的全部内容, 来源链接: utcz.com/qa/431251.html

回到顶部