SwiftUI Xcode 11 beta 7 @Binding for collections 正在破坏预览
SwiftUI Xcode 11 beta 7 @Binding for collections is breaking preview
这在 beta 7 之前一直有效。似乎当我想将集合中的一个元素作为绑定传递到另一个视图时,预览会被破坏
我遵循了发行说明 @Binding 不再符合收集协议 comments are at the bottom
我有 Catalina 和 xcode beta 7
Parent:
struct SimpleStructure {
var label: String
}
struct ContentView: View {
@State private var myVariables = [SimpleStructure(label: "hello")]
var body: some View {
ChildView(myVariables: $myVariables)
}
}
Child
struct ChildView: View {
@Binding var myVariables: [SimpleStructure]
var body: some View {
List(myVariables.indexed(), id: \.1.label) {(index, variable) in
GrandChildView(myVariable: self.$myVariables[index])
}
}
}
盛大Child
struct GrandChildView: View {
@Binding var myVariable:SimpleStructure
var body: some View {
Text(myVariable.label)
}
}
更新:
Beta 8 仍然存在问题
发行说明有错字。您需要更改:
var endIndex: Index { base.startIndex }
和
var endIndex: Index { base.endIndex }
不知道,这个问题解决了吗?如果没有,也许这有帮助:
struct ChildView: View {
@Binding var myVariables: [SimpleStructure]
var body: some View {
List(myVariables.indices) { index in
GrandChildView(myVariable: self.$myVariables[index])
}
}
}
如果解决了,请标记正确答案,或者自己在此处提供解决方案,以防您在此期间找到解决方案。
此问题已在 SwiftUI Beta 10 中修复
这在 beta 7 之前一直有效。似乎当我想将集合中的一个元素作为绑定传递到另一个视图时,预览会被破坏
我遵循了发行说明 @Binding 不再符合收集协议 comments are at the bottom
我有 Catalina 和 xcode beta 7
Parent:
struct SimpleStructure {
var label: String
}
struct ContentView: View {
@State private var myVariables = [SimpleStructure(label: "hello")]
var body: some View {
ChildView(myVariables: $myVariables)
}
}
Child
struct ChildView: View {
@Binding var myVariables: [SimpleStructure]
var body: some View {
List(myVariables.indexed(), id: \.1.label) {(index, variable) in
GrandChildView(myVariable: self.$myVariables[index])
}
}
}
盛大Child
struct GrandChildView: View {
@Binding var myVariable:SimpleStructure
var body: some View {
Text(myVariable.label)
}
}
更新:
Beta 8 仍然存在问题
发行说明有错字。您需要更改:
var endIndex: Index { base.startIndex }
和
var endIndex: Index { base.endIndex }
不知道,这个问题解决了吗?如果没有,也许这有帮助:
struct ChildView: View {
@Binding var myVariables: [SimpleStructure]
var body: some View {
List(myVariables.indices) { index in
GrandChildView(myVariable: self.$myVariables[index])
}
}
}
如果解决了,请标记正确答案,或者自己在此处提供解决方案,以防您在此期间找到解决方案。
此问题已在 SwiftUI Beta 10 中修复