0

これが明確であることを願っています。事前に感謝します。

次のコード行を、インデックス0の値のみを取得するように変更して、既存のすべてのインデックスの値を取得するようにします。Plist内の1つの配列オブジェクトから多くの配列オブジェクトに移動する必要がありますpsこのコード行はcellForRowAtIndexPathにあります

    NSArray *myIndexList = [[inPlist objectAtIndex:0] objectForKey:@"myIndex"];
    NSLog( @"data from INDEX !!!!!!!! %@", myIndexList); 

私はforループをいじっています....運がありません。-助けてくれてありがとう。

4

4 に答える 4

1

配列を列挙します。

たとえば-(void)enumerateObjectsUsingBlock:(void(^)(id obj、NSUInteger idx、BOOL * stop))block;

于 2012-09-20T20:15:38.097 に答える
1

配列が辞書の配列である場合(objectForKeyを使用しているためと思われます)、valueForKeyを使用できます。

NSArray *myIndexList = [inPlist valueForKey:@"myIndex"];

これにより、配列内のキー「myIndex」のすべての値が得られます。

于 2012-09-21T04:24:27.360 に答える
0

私が正しく理解していれば、高速列挙は簡単な戦術になります。user846262が推奨するブロックベースのアプローチはより高度ですが、これは最初は少し簡単です。

于 2012-09-21T04:41:05.703 に答える
0

高速列挙は素晴らしいですが、アイテムのインデックスを知る必要がある場合はそうではありません。

for(element *foo in array)
{
  // do stuff
}

vs

[array enumerateObjectUsingBlock:^(element *foo, NSUInteger i, BOOL *stop){
// here you got access to both foo and i, and it is working exactly the same way for loop does

}];

HTH

于 2012-10-01T23:14:48.617 に答える