使用来自2个NSMuteableArrays

时间:2015-06-21 02:37:39

标签: ios iphone uitableview

我有两个NSMuteableArray个。第一个(nameOfSectionArray)收集每个新部分的名称。第二个(numberOfRowsArray)收集每个部分应该有多少行。我无法使用这些数组来创建具有正确行数的正确数量的UITableView

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    return [nameOfSectionsArray count];
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return [numberOfRowsArray objectAtIndex:section];
}


-(NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{
    return [nameOfSectionsArray objectAtIndex:section];
}

该程序不会崩溃。我只是没有得到任何行。所有部分都正确出来。有人可以用numberOfRowsInSection方法帮助我吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

我明白了。我意识到我只是创建了一个NSMuteableArry来保存一个数字,表示我有多少行。将来这将成为一个问题。

相反,我做了另一个NSMuteableArry,我为每一行添加了一个对象。然后我将其添加到原始的numberOfRowsArray

这就是我所做的。

-(void) newRows
{

int i=0;
UITableViewCell *cell = [[UITableViewCell alloc]init];
NSMutableArray *allCells = [[NSMutableArray alloc]init];

while (i<numberOfRows)
{
    [allCells insertObject:cell atIndex:[allCells count]];
    i++;
}

[numberOfRowsArray insertObject:allCells atIndex:[numberOfRowsArray count]];
}

然后

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {

return [[numberOfRowsArray objectAtIndex:section] count];
}

这就是诀窍:))