Ger*_*rry 2 swift swift5 swiftui
我对 swift 很陌生,所以请原谅任何明显的误解。我试图研究但没有好的答案。
我有一个带有以下迭代的 NavigationView
ForEach(listOfStuff, id: \.self)
Run Code Online (Sandbox Code Playgroud)
被listOfStuff定义为符合 Hashable 的结构,一切正常。
我想将结构更改为类,但不知道如何使类可哈希以便工作\.self(它一直抱怨该类必须可哈希)
例子是旧的或者一直在谈论结构。我什至不知道是否可以在 ForEach 中使用类?我该怎么办?
谢谢
这是在所描述的用例中使用基于类的模型的示例。使用 Xcode 11.4 进行测试
class Stuff: Hashable, Equatable {
static func == (lhs: Stuff, rhs: Stuff) -> Bool {
lhs.title == rhs.title
}
func hash(into hasher: inout Hasher) {
hasher.combine(title)
}
var title: String = ""
}
struct StaffView: View {
let listOfStaff: [Stuff]
var body: some View {
ScrollView {
ForEach(listOfStaff, id: \.self) { stuff in
Text(stuff.title)
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3721 次 |
| 最近记录: |