【发布时间】:2020-05-12 05:02:39
【问题描述】:
我最近遇到了一个问题,我必须在我的 init 方法中初始化一个 @State 变量。 This 帖子帮助我解决了这个问题。
我意识到这是这样做的方法:
@State var fullText: String // No default value of ""
init(letter: String) {
_fullText = State(initialValue: list[letter]!)
}
我知道@State 是一个属性包装器,我阅读了关于属性包装器的文档。我从其他reading 发现了这段代码:
@State private var flag = false
翻译成这段代码:
private var _flag: State<Bool> = State(initialValue: false)
private var $flag: Binding<Bool> { return _flag.projectedValue }
private var flag: Bool {
get { return _flag.wrappedValue }
nonmutating set { _flag.wrappedValue = newValue }
}
我的问题是它在哪里记录了 _variableName 是从包装的属性方法创建的,我可以重新定义它? SwiftUI 开发人员应该如何从 Apple 的文档中知道这一点?我正在尝试查找我认为是我缺少的文档。
【问题讨论】: