Ich denke, das sollte ziemlich einfach sein, aber ich kann es nicht herausfinden, weil ich Generika oder enums mit Argumenten nicht fest im Griff habe.Realm feinkörnige Benachrichtigungen Swift 3-Syntax
Vorher hatte ich eine Erweiterung UITableView für Feinkorn-Benachrichtigungen der Handhabung
func updateTableWithChanges<AnyType>(changes:RealmCollectionChange<Results<AnyType>>) {
switch changes {
case .Initial:
self.reloadData()
case .Update(let results, let deletions, let insertions, let modifications):
beginUpdates()
// DO STUFF
endUpdates()
case .Error(let error):
print(error)
}
}
so ausgesehen Da die Migration auf Swift 3 die Syntax geändert hat, und ich kann nicht herausfinden, was in der gehen sollte die Klammer des Falles. Die neue Syntax ist
switch changes {
case .initial(T):
break
case .update(T, deletions: [Int], insertions: [Int], modifications: [Int]):
break
case .error(Error):
break
}
Was die Argumente mit den ENUM-Fälle sind (insbesondere T), und wie erreiche ich sie jetzt?
Wenn Sie nicht die zugehörigen Werte in einem Enum Fall verwenden, sollten Sie noch in der Lage sein, die Klammern in Swift 3 auszulassen ('Fall .initial:', 'Fall .update', etc). – AustinZ