2011-06-14 67 views
0

我有一个UITableview与很多节与动态高度的行动态数量。 现在我得到以下问题:UITableView:节标识符问题

[indexPath section]返回视图中(最新/最低/最高值)部分的值。 现在我有一个部分女巫是非常小的,我不幸“看到”在一次3节。我如何识别顶部的部分?有任何想法吗。 我需要它,因为在每个部分中都有导致部分中行数量变化的按钮(取决于部分)。有时我会增加错误部分的行数,因为我无法识别'上部'部分。

我希望我描述它够好。

回答

1

您可以使用表视图的visibleCells方法获取所有可见单元格。您需要对数组进行排序才能确定。

NSArray * visibleCells = [self.tableView visibleCells]; 
NSArray * sortedVisibleCells = [visibleCells sortedArrayUsingComparator:^NSComparisonResult(id obj1, id obj2) { 
    NSIndexPath * indexPath1 = [self.tableView indexPathForCell:obj1]; 
    NSIndexPath * indexPath2 = [self.tableView indexPathForCell:obj2]; 

    return [indexPath1 compare:indexPath2]; 
}]; 

NSLog(@"%@", [self.tableView indexPathForCell:[sortedVisibleCells objectAtIndex:0]]); 
+0

谢谢你的回答。它现在起作用了,唯一我不得不在你的代码中改变的地方是,它打破了0和0行,因为值是零,NSLog无法处理它。 – 2011-06-14 12:42:59