0

在方法中

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 

通常你使用一个数组来设置

[cell.textLabel setTex:@"row"];

但是如果我想跳一排呢?

例如在 indexpath.row 我不想在我的表格视图中有这个单元格,可能吗?

4

3 回答 3

2

试试这个:合并行高的 tableView 数据源方法。

-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
    if (indexPath.row == NUMBER_TO_AVOID) {
        return 0.0f;
    }
    return 44.0f; //standard cell height
}
于 2012-06-12T22:53:54.453 回答
1

我已经在几个类似的情况下这样做了。您要做的是创建第二个数组“activeItems”。或类似的东西。遍历您的主数据数组并使用有效项目构建活动数组。而不是让您的数据源引用此数组。这为您提供了一个准确索引到您的表的数组。

于 2012-06-13T12:53:32.233 回答
0

您可以在 cellForRowAtIndexPath 中放置一个条件。尝试这个:

data = [array objectAtIndex:indexPath.row];

If (data != nil){
    [cell.textLabel setText:data];
}
else{
    // code that handles data if null
}
于 2012-06-13T00:21:02.547 回答