Swift@绑定初始化



如何手动初始化Swift绑定,并使用所需的包装值?

使用Bool作为类型,这里是最基本的所需init

let b: Binding<Bool> = Binding.init(true)//消息出错:

Cannot convert value of type 'Bool' to expected argument type 'Binding<Bool?>

Value of optional type 'Binding<Bool>?' must be unwrapped to a value of type 'Binding<Bool>'

问题我有

  1. 为什么会出现上述错误
  2. 初始化一个简单的Bool绑定的正确语法是什么
  3. 为什么类型签名中必须包含选项(<'Binding<Bool?>(

您需要@State。如果您想要默认的初始值以及设置它的机会,请考虑这个问题。

@State var a: Bool
init(initialA: Bool = true) {
_a = .init(initialValue: initialA)
} 

最新更新