2009-08-24 4 views
0

Ich baue eine iPhone-App, die über eine Eigenschaftsliste einige Standarddaten enthält. Diese Daten sind die Quelle für mein Modell. Was ist der beste Weg, um diese Daten zu verwalten, so dass der Benutzer Daten von diesem Plist lesen (und in einigen Fällen schreiben) kann?Soll eine Eigenschaftsliste von einem eigenen Modellobjekt verwaltet werden?

Ich bin derzeit NSCObject NSClass und Zuordnung der PLIST-Daten zu Eigenschaften in diesem Objekt, mit Methoden zum Lesen/Schreiben von Daten in das Objekt. Ich habe über das NSCoding-Protokoll und NSCoder gelesen, bin mir aber nicht sicher, wie ich dies in meiner benutzerdefinierten Klasse implementieren soll.

Jede Hilfe wird geschätzt.

Antwort

0

scheint die Antwort in diesem Link lautet:

http://mojomonkeycoding.com/tag/nscoding/

Ich denke, man sich keine Sorgen über Super initWithCoder in diesen Fällen zu sein.

+0

Dieser Link scheint besser zu sein: http://cocoaheads.byu.edu/wiki/nscoding – mga

0

Wenn Sie die Daten wirklich in einem Plist behalten möchten, können Sie NSString: propertyList verwenden. Es wird die Eigenschaftsliste nehmen und in die notwendigen Strukturen für Sie parsen. Sie können dann NSPropertyListSerialization verwenden, um es zurückzuschreiben.

Ehrlich gesagt, was Sie tun, ist einfacher, es sei denn, Sie haben eine Tonne von verschiedenen Entitäten zu verfolgen. Es gibt viele Möglichkeiten, einfach Daten zu laden und zu speichern, wenn das alles ist, was Sie interessiert. Neben NSCoder (das ist eine Menge Standardcode für meinen Geschmack) könnten Sie CoreData verwenden und sich nicht um den Serialisierungsprozess kümmern. -CoreData verwaltet alles halbautomatisch für Sie.

+0

Die App lädt 7 Name/Wert-Paare und eine Reihe von Wörterbüchern (zum Beispiel eine Liste von Personen mit seinem/Stück ihre Daten). Ich möchte diese Daten in verschiedenen Ansichten in der App verwenden. – mga

+0

Plists eignen sich hervorragend für Konfigurationsdaten, die nur selten aktualisiert werden. Wenn Sie eine Reihe von Daten in diesem oder häufiger Aktualisierungen haben, sollten Sie wahrscheinlich CoreData verwenden. –

+0

es ist meist eine schreibgeschützte Liste von Werten und 4 Name/Wert-Paare für persistente App-Status – mga

Verwandte Themen