1

次の plist から結果を出力しようとしています。ここで、checked は 1 です (checked は plist の BOOL です)。私が抱えている問題は、テキストを providersArray に出力しようとすると、「text1、text2、text3」などの 1 つの配列ではなく、次々に出力されることです...

私の構文が問題を引き起こしています。どんな助けでも素晴らしいでしょう。

NSString *path = [[NSBundle mainBundle] pathForResource:@"Providers" ofType:@"plist"];
dataArray = [NSMutableArray arrayWithContentsOfFile:path];
for (NSDictionary *dictionary in dataArray)
{
    text = [dictionary valueForKey:@"text"];
    checked = [dictionary valueForKey:@"checked"];
    NSLog(@"%@ checked value is: %@", text, checked);


    if ([checked boolValue]) {
        NSString *providers = [NSString stringWithFormat:@"%@",text ];
        NSLog(@"providers are %@", providers);

       NSArray *providersArray = [text componentsSeparatedByString:@","];

      NSLog(@"providersArray are %@", providersArray);


    }

}
4

1 に答える 1

2

NSArray *providersArrayループの外に置きます。

何度も初期化されて以前の値が失われるのを防ぐには、on を使用addObject:します。

于 2013-01-21T16:49:57.807 に答える