Sto scrivendo un'applicazione Cookbook e non sono stato in grado di trovare nulla su come salvare i dati di una classe che ho creato (la classe Recipe). L'unico modo che ho visto potrebbe essere quella di conservare possibilmente il contenuto di questa classe nel suo insieme senza salvare singolarmente ogni elemento della classe per ogni oggetto, rendendo questo metodo per la mia classe Ricetta:Come posso salvare un oggetto Objective-C che non è un oggetto elenco di proprietà o esiste un modo migliore per farlo rispetto a un elenco di proprietà?
-(void) writeToFile:(NSString *)file atomically:(BOOL)atomic{
}
Ma ho assolutamente nessuna idea di come andrei a implementare questo per salvare questo oggetto su un file usando questo metodo. Alcune delle proprietà sono:
NSString* name;
UIImage* recipePicture;
NSDate* dateAdded;
NSMutableArray* ingredients; //The contents are all NSStrings.
Qualcuno sa come fare per salvare un oggetto della classe ricetta? Mi ha fatto impazzire non riuscire a capirlo. Qualsiasi aiuto sarebbe molto apprezzato. Ho già un .plist intitolato "RecipeData.plist". Avrei solo bisogno di scrivere ogni proprietà nel plist e inizializzare un nuovo oggetto di ricetta con quelle proprietà in fase di esecuzione?
È necessario aggiornare questo con gli altri due terzi della risposta: come codificarlo in un oggetto NSData per la memorizzazione in un elenco di proprietà e come decodificare i dati dall'elenco delle proprietà. – rmaddy
Come ho detto nel commento qui sotto, grazie mille per avermi dedicato del tempo per mostrarmi come farlo. È stato davvero di grande aiuto. – crarho
Dovresti chiamare 'self = [super initWithCoder: coder];' invece di 'self = [super init];'. Altrimenti, la tua superclasse non avrà i suoi dati codificati. –