2011-12-19 9 views
0

でNSArrayのを初期化する目的の位置の値を設定するために、私はこの問題は、私は、オブジェクトなしでappNameの配列を初期化する場合は、この配列が空で保持していることであるは、未知のサイズ

[self.appName replaceObjectAtIndex:x withObject:[self.appCell objectAtIndex: 0]]; 

を使用していますinitWithObjectsを使って初期化してから動作させる必要があります。問題は、私は、配列のサイズがわからないということであると私は設定されている場合、それが好き:たとえば

NSMutableArray *nameArray = [[ NSMutableArray alloc] initWithObjects:@"test",@"test",@"test",@"test", nil]; 
self.appName = nameArray; 
[nameArray release]; 

、0から3までが、位置4から次のものに働き、replaceObjectAtIndex後、位置がnilの値を持っています。どのようにそれを解決するには?ありがとうございました

答えて

1

それあなたが好きなときに可変配列は、あなたが、同様に(最後に)オブジェクトを追加し、(中央)のオブジェクトを挿入することができます:あなたはどこにでもこれを行うことができます

NSMutableArray *nameArray = [[NSMutableArray alloc] init]; 
[nameArray addObject:@"test"]; 
[nameArray insertObject:@"another test" atIndex:0]; 
[nameArray removeObjectAtIndex:1]; 

あなたが持っています可変配列へのポインタ。

+0

[self.appName insertObject:[self.appCell objectAtIndex:0] atIndex:x];働いて、ありがとう! – Jaume

0

のメトン数を見ると、配列の要素数がわかります。だから、あなたのインデックスxが数よりも少ないことを確認してから、その要素を削除することができます。

関連する問題