Xcode 11 Beta 4 TabbedView 绑定问题

Xcode 11 Beta 4 TabbedView Binding Problem

环境: 版本 11.0 beta 4 (11M374r)

我试图掌握不断发展的 List() 语法。
以下是 UUID 的简单列表:

通过预测试版 4 代码:

这是我尝试的补救措施和编译器结果。
修复之前的警告后,我创建了一个额外的错误:

我尝试用“@Binding”替换“@State”;这没有用。

这是完整的源代码:

import SwiftUI

enum TabIdentifier {
    case list
    case another
}

struct TabView: View {
    private var uuids: [String] = {
        let ids: [String] = Array(0...5).map { _ in
            UUID().uuidString
        }
        return ids
    }()

    @State private var selectedTab: TabIdentifier = .list

    var body: some View {
        TabbedView(selection: $selectedTab) {
            // ------------------------------------------------------------
            // Tab #1
            NavigationView {
                 List(uuids, id: \.id) { uuid in
                    Text(uuid)
                }.navigationBarTitle(Text("List of UUIDs"))
            }.tabItem {
                Text("List") // ...Tab #1 Label
            }
            .tag(TabIdentifier.list) // ...Tab #1 tag
            // ------------------------------------------------------------
            // Tab #2
            Text("Hello Ric!")
                .tabItem {
                    Text("Another view") // ...Tab #2 Label
            }
            .tag(TabIdentifier.another) // ... Tab #2 Label
        }
    }
}

有什么补救措施?

这是误导性错误。我很确定你的问题只是一个错字。应该是 List(uuids, id: \.self),而不是 List(uuids, id: \.id)。根据您的代码,uuids 只是一个字符串数组,而 String 没有 属性 id.