Kennt jemand, oder haben Sie ein Beispiel dafür, wie man Kerntransientenwerte mit Swift behandelt? Ich weiß, @NSManaged vor den Eigenschaften zu verwenden, aber kann nicht herausfinden, wie die Logik zum Erstellen der transienten Werte mit Swift zu codieren.Kerndaten transiente Werte mit Swift
Antwort
Häkchen des transiente Feld in Ihrem Datenmodell für bestimmtes Attribut (z. sectionTitle
).
erstellen Klasse für diese Entität, wird es so etwas wie
class Message: NSManagedObject {
@NSManaged var body: String?
@NSManaged var time: NSDate?
@NSManaged var sectionTitle: String?
}
bearbeiten sie aussehen und es so machen:
class Message: NSManagedObject {
@NSManaged var body: String?
@NSManaged var time: NSDate?
var sectionTitle: String? {
return time!.getTimeStrWithDayPrecision()
//'getTimeStrWithDayPrecision' will convert timestamp to day
//just for e.g.
//you can do anything here as computational properties
}
}
Update- Swift4
Verwenden @objc
Tag für Swift 4 als:
@objc var sectionTitle: String? {
return time!.getTimeStrWithDayPrecision()
}
Das funktioniert gut, wenn "Codegen" in Entity-Eigenschaft auf "manuell/keine" festgelegt ist. Wie man damit umgeht "Codegen" ist auf "Kategorie/Erweiterung" eingestellt? – Satyam
Mit swift 4 musste ich "@objc dynamic var sectionTitle: String? {...}" in einem ähnlichen Fall verwenden, damit es funktioniert. – user3687284
Ja, lassen Sie mich die Antwort für Swift 4 aktualisieren – D4ttatraya
Wir sollten willAccessValueForKey und didAccessValueForKey verwenden zu unterstützen KVO
- 1. übergeben Kerndaten zwischen Ansichten swift
- 2. swift: Datensätze in Kerndaten überprüfen
- 3. Erste Elemente zu Kerndaten in Swift einfügen
- 4. Absturz mit Int32 mit Swift 2 und Kerndaten
- 5. Relationship Fehler mit Kerndaten
- 6. iOS Swift | Kerndaten holen durch spezifischen Wert
- 7. swift nsTimer zum Aktualisieren von Kerndaten
- 8. Parsing JSON und speichern mit Kerndaten Swift 2.0 Best Practice
- 9. Benutzerdefinierte Kerndaten SectionNameKeyPath
- 10. Kerndaten Multithread mit
- 11. Lokalisierung mit Kerndaten
- 12. Editierbare TableView mit Kerndaten
- 13. UIBezierPath Persistenz mit Kerndaten
- 14. Java: Statische transiente Felder
- 15. Zeitbasierte transiente Eigenschaft mit NSFetchedResultsController verwenden
- 16. Sortierung auf "transiente" Felder mit NSFetchedresultController
- 17. Kerndaten - Quiz-Abfrage - Aufnahmefortschritt?
- 18. Mehrere Bilder in einem einzigen Eintrag- Kerndaten in Swift
- 19. Spezielle Kerndaten holen
- 20. Sql Server Transiente Ausnahme Nummern
- 21. Löschen von Kerndaten für Entität in Swift 2
- 22. mehrere Persistenz speichert mit Kerndaten
- 23. Kerndaten: UITableView mit mehreren NSFetchedResultControllern
- 24. "Export" Kerndaten mit magischen Datensatz
- 25. Gruppieren nach Wochentagen mit Kerndaten
- 26. Kerndaten mit iOS-App senden
- 27. Löschen von Tabellenzeile mit Animation mit Kerndaten
- 28. Gson deserialisieren und serialisiert transiente Feld
- 29. Warum hält Castle Windsor transiente Objekte fest?
- 30. Warum jackson transiente Elemente auch serialisiert?
Mit @NSManaged erlaubt mir nicht, einen Getter für die transiente Eigenschaft in Swift zu erstellen. Ich würde gerne wissen, wie transiente Eigenschaften auch in Swift funktionieren. – Sam
mögliches Duplikat von [CoreData Swift und transienten Attribut-Gettern] (http://stackoverflow.com/questions/25960555/coredata-swift-and-transient-attribute-getters) – Ian
Haben Sie dieses Problem gelöst? Hat der angegebene Link geholfen? – Orion