UITableView在滚动时获取该部分的值

时间:2013-11-16 17:33:14

标签: iphone objective-c

- (NSString*) tableView:(UITableView*)tableView titleForHeaderInSection:(NSInteger)section
{
    NSLog(@"%i",section);
}

如果我向下滚动表格,我会得到值 0 2 3 4 ... 如果上来 0 2 3 4 2 1 ... 如何在不减少或增加2的情况下获得该值?

2 个答案:

答案 0 :(得分:1)

UITableView将自行决定调用tableView:titleForHeaderInSection,以便在需要时获取特定部分的标题。它没有承诺它将要求标题的顺序。

这应该没有区别;无论顺序如何,都由知道给定节号的标题,并在表视图请求时从该委托方法返回它。尝试阅读UITableViews及其委托/数据源如何协同工作,我打赌你会发现你想要做的事情非常简单。

编辑:既然你已经略微澄清了你的目标,我建议你在UITableView中查看-indexPathsForVisibleRows方法。这将为您提供当前在表视图中可见的NSIndexPath,并且您可以找到具有最小节值的索引路径,以确定表中仍然可见/不可见的第一个部分。

答案 1 :(得分:0)

该方法应该只返回特定部分的标题,而不管部分索引值的顺序。

tableview将自行管理节头,并在需要信息时询问数据源。数据源应该知道如何使用所需的标题映射节索引。