ラベル プロパティリスト の投稿を表示しています。 すべての投稿を表示
ラベル プロパティリスト の投稿を表示しています。 すべての投稿を表示

2010年5月15日土曜日

プロパティリストからキーで配列を取得する

プロパティリストからキーを使って配列を取得するには、以下の手順で取得します。

  1.  メインバンドルを取得する
  2. プロパティリストのファイル名からフルパスを取得する
  3. フルパスを指定してプロパティリストの内容をディレクトリとして取得する。
  4. キーを取得する。
  5. キーをつかって、キーに該当する値を配列として取得する

もちろん、初期化時にディレクトリを保持したり、キー配列を保持したり、配列の初期値を入れることは必要です。(1〜3に該当)

例:

- (void)viewDidLoad {
NSBundle *bundle = [NSBundle mainBundle];
NSString *plistPath = [bundle pathForResource:@"statedictionary" ofType:@"plist"];
NSDictionary *dictionary = [[NSDictionary alloc]initWithContentsOfFile:plistPath];
self.stateZips = dictionary;
[dictionary release];
NSArray *components = [self.stateZips allKeys];
NSArray *sorted = [components sortedArrayUsingSelector:@selector(compare:)];
self.states = sorted;
NSString *selectedState = [self.states objectAtIndex:0];
NSArray *array = [stateZips objectForKey:selectedState];
self.zips = array;
}

プロパティリスト

プロパティリストは、iPhone等のシステムやアプリケーションで利用する表のようなもので、複数のキーと複数の値からなります。

キーとは、表の列のタイトルのようなもので、ディクショナリ形式として読み込んだプロパティリストの表の中から列のデータ全てを配列として取り込む際、当該列を指定するキーとして利用するもので、そのキーを指定すれば、その列の値全てを配列として取り出すことができます。



iPhoneのシステム用プロパティについての翻訳サイトがあるようなので、ご紹介します。