2011-12-19 86 views
0

一旦陣列被初始化,以便設置所希望的位置的值,我使用初始化一個NSArray具有未知大小

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

問題是,如果我初始化而不對象APPNAME數組,該數組保持空我必須使用initWithObjects對它進行初始化,然後才能工作。問題是,不知道數組的大小,如果我將它喜歡:

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

例如,工作從0到3,但是從位置4到以下物質,replaceObjectAtIndex後,位置具有零值。如何解決它?謝謝

回答

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 2011-12-19 11:24:15

0

看看NSArray上的計數方法它給出了數組中元素的數量。因此,檢查您的索引x是否小於計數,然後您可以刪除該元素。