0

カスタム注釈オブジェクトの永続ストレージに興味があります

CustomAnnotation : NSObject <MKAnnotation>

次のプロパティがあります

@property (nonatomic, assign) CGFloat val1;
@property (nonatomic, retain) NSString *val2;
@property (nonatomic, retain) NSDate *val3;
@property (nonatomic, retain) NSURL *val4;
@property (nonatomic, assign) double val5;
@property (nonatomic, assign) double val6;

データを保存するための最良の方法は何ですか? NSUserDefaults を使用することを考えていましたが、CustomAnnotation を NSData にアーカイブする必要がありますか? どうやってそれをしますか?

ありがとう!

4

1 に答える 1

0

カスタム オブジェクトを永続化するNSUserDefaults場合は、2 つのオプションがあります。

  1. を使用してオブジェクトを NSData にエンコードします。NSKeyedArchiver
  2. NSDictionary保持するすべての値を含む を作成します。

を使用するNSUserDefaultsことが適切なアプローチであるかどうかは、いくつかの要因に依存します。オブジェクトが 1 つまたは数個しかない場合は、それで問題ありません。たくさんある場合は、他のオプションを検討することをお勧めします。おそらくplistまたはその他のファイルです。いずれにせよ、2 つのアプローチのいずれかを使用してオブジェクトをエンコードする必要があるという同じ問題があります。

于 2013-03-18T21:58:30.110 に答える