我正在尝试使用新的SwiftUI框架从枚举中列出案例的原始值。但是,我在将“数据”符合可识别协议时遇到了麻烦,我真的找不到如何做到这一点的信息。它告诉我“Initializer 'init(_:rowContent:)' 要求 'Data' 符合 'Identifiable'” 存根在最后一个扩展中为我提供了一个 ObjectIdentifier 变量,但不知道我应该返回什么。你能告诉我怎么做吗?如何使 Data 符合 Identifiable,以便我可以使用原始值制作一个列表?
enum Data: String {
case firstCase = "First string"
case secondCase = "Second string"
case thirdCase = "Third string"
}
extension Data: CaseIterable {
static let randomSet = [Data.firstCase, Data.secondCase]
}
extension Data: Identifiable {
var id: ObjectIdentifier {
return //what?
}
}
//-------------------------ContentView------------------------
import SwiftUI
struct Lala: View {
var name: String
var body: some View {
Text(name)
}
}
struct ContentView: View {
var body: some View {
return List(Data.allCases) { i in
Lala(name: i.rawValue)
}
}
}