私の iOS アプリでは、教師のリストを plist からテーブルビューに読み込んでいますが、うまく機能しています。
別の plist には、ルート配列 > ディクショナリ > 4 つの文字列の階層があり、同じ文字列を持つ複数のディクショナリがあります。これは学校用なので、キーは「ClassName」、「Period」、無関係な番号、「Teacher」の名前です。各教師は 1 日に複数のクラスを担当しており、名前は同じでも時間帯が異なるクラスもあります。
ここに問題があります:
テーブルビュー (NSString に保存されている) からの教師の選択と、(NSString に保存されている) 期間に基づいて、教えられているクラスの名前を取得する必要があります。
例: Bob Smith at 8 AMを選択すると、代数を教えていることが返されます。
その結果を文字列にエクスポートする必要がありますが、それは難しいことではありません。
これは、この Objective-C が plist からテーブルを選択的に入力するのと同じ一般的な考え方です。キーが等しい が2つのキーをチェックしている場合、そのコードは機能していません。
私はstackoverflowや他のサイトを広範囲に調べましたが、良い結果は得られませんでした.
あなたの助けに感謝します。あなたたち最高。
編集: 詳細
これは私の didSelectRowAtIndexPath にあります
NSArray *listOfClasses = [NSArray arrayWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"periodTchrCls" ofType:@"plist"]];
NSPredicate *pred = [NSPredicate predicateWithFormat:@"Teacher == %@", cellText];
NSArray *testFilter = [listOfClasses filteredArrayUsingPredicate:pred];
NSLog(@"This is the test %@", testFilter);
「cellText」は先生の名前の選択です。
plist は正常にロードされています。
ログが表示されます
This is the test ( lots of space )
ご協力いただきありがとうございます。