Zistil som, že novú tabuľku súčasťou SwiftUI 3.0 je ako hračka, ktorá sa môže používať ľahko, ale je to ťažké rozšíriť viac funkcií.
TableRow a TableColumn zdediť od hodnoty predmetu. Ako môžem získať pohľad na rade? Chcem nastaviť rôzne ContextMenu pre každý riadok. Okrem toho, som sa chcete nastaviť ContextMenu na hlavičku stĺpca.
Ako implementovať ho na základe Tabuľky komponent? Nechcem použiť súčasť Zoznam.
struct Person: Identifiable {
let givenName: String
let familyName: String
let id = UUID()
}
@State private var people = [
Person(givenName: "Juan", familyName: "Chavez"),
Person(givenName: "Mei", familyName: "Chen"),
Person(givenName: "Tom", familyName: "Clark"),
Person(givenName: "Gita", familyName: "Kumar"),
]
@State private var sortOrder = [KeyPathComparator(\Person.givenName)]
var body: some View {
Table(people, sortOrder: $sortOrder) {
TableColumn("Given Name", value: \.givenName)
TableColumn("Family Name", value: \.familyName)
}
.onChange(of: sortOrder) {
people.sort(using: $0)
}
}