Tabs Xcode 11 Beta 4选项卡视图绑定问题
环境:版本11.0 beta 4(11M374r) 我试图掌握不断发展的List()语法Tabs Xcode 11 Beta 4选项卡视图绑定问题,tabs,swiftui,xcode11,Tabs,Swiftui,Xcode11,环境:版本11.0 beta 4(11M374r) 我试图掌握不断发展的List()语法 以下是UUID的简单列表: 通过Beta 4之前的代码: 这是我尝试的补救方法和编译结果 在修复之前的警告后,我创建了一个附加错误: 我试着用'@Binding'替换'@State';这没用。 以下是完整的源代码: import SwiftUI enum TabIdentifier { case list case another } struct TabView: View
以下是UUID的简单列表: 通过Beta 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