UITableView中包含多个部分的总行数

时间:2012-02-28 20:34:26

标签: objective-c cocoa-touch uitableview

我需要计算UITableView中的总行数,但我有多个部分。我可以访问表格视图上的属性吗?如果没有,我该如何找到这些信息?

3 个答案:

答案 0 :(得分:6)

从xCode的新文件对话框中创建UITableView的“Objective-c类别”,并将此方法添加到其中:

-(NSInteger)numberOfRowsInTotal{
    NSInteger sections = self.numberOfSections;
    NSInteger cellCount = 0;
    for (NSInteger i = 0; i < sections; i++) {
        cellCount += [self numberOfRowsInSection:i];
    }

    return cellCount;
}

然后将您的类别标题导入到您需要访问此方法的任何类中,您可以找到所需的内容。

答案 1 :(得分:4)

您可以通过迭代每个部分轻松计算此值。

NSUInteger allRows = 0;
for(NSInteger i = 0; i < [tableview numberOfSections]; i++)
{
        allRows += [tableview numberOfRowsInSection:i];
}

如果您想要一个属性,可以轻松将上述代码添加到UITableView的类别中。

答案 2 :(得分:1)

UITableView不知道它有多少个部分或行,但是你的表视图数据源却有。迭代这些部分并将每个部分中的行数相加,如果这是你需要做的。可能有一种更简单的方法,具体取决于您存储数据的方式。