Ho un modello CoreData (oggetto gestito) chiamato Item:Can CoreData può gestire sottoclassi polimorfiche?
@interface Item : NSManagedObject {
NSString * type;
}
@property (retain) NSString * type;
@end
Ho anche due sottoclassi dell'oggetto:
@interface Circle : Item
@end
@interface Square : Item
@end
a monitorare la sottoclasse dell'elemento dalla proprietà type
.
Quando recupero il mio Items
, ritorno a una serie di elementi. Ma voglio essere in grado di tipizzare dinamicamente gli oggetti in base al loro type
.
CoreData supporta questo in modo nativo? In caso contrario, c'è un modo per digitare dinamicamente ogni Item
?
posso ottenere la classe che voglio lanciare la Item
come come:
Item * item = ...;
id klass = NSClassFromString(item.type);
io non so come posso lanciare item
come tipo klass
.
Grazie! È frustrante non sapere cosa cercare. Nessuna meraviglia che "sottoclasse" e "polimorfo" non abbiano restituito risultati! Come nota, la ** Guida alla programmazione dei dati fondamentali: Modelli di oggetti gestiti ** contiene informazioni molto più approfondite nelle sezioni ** Eredità delle entità ** e ** Entità astratte ** http://developer.apple .com/library/mac/# documentation/cacao/concettuale/CoreData/Articoli/cdMOM.html –
Grazie per la risposta - il collegamento è rotto però, potresti aggiornare? – Benjohn