正如您在下面链接的图片中看到的,当我选择第一行时,所选行索引返回0.当我选择第二行时,它也返回0,当我选择第三行时,它返回1.
为什么会这样,我如何确定实际选择的内容?
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSIndexPath *selectedRowIndexPath = [tableView indexPathForSelectedRow];
int selectedSection = selectedRowIndexPath.section;
NSInteger i =0;
for (NSInteger j = 0; j <= selectedSection; ++j)
{
for (i=0; i < [tableView numberOfRowsInSection:j]; ++i)
{
}
}
}
答案 0 :(得分:0)
这是因为你必须看看这些部分。
确实是第一行,但是第0节,第1节等。
为了概括,你有0行(就像每个部分都有行一样)。
第0节(因为你有类似电话簿的东西,所以请说A):
第1节(字母b)
第2节(字母c):
代码:
NSInteger rowNumber = 0;
for (NSInteger i = 0; i < indexPath.section; i++) {
rowNumber += [self tableView:tableView numberOfRowsInSection:i];
}
rowNumber += indexPath.row;
答案 1 :(得分:0)
他们是不同的部分 行以每个部分中的索引0开始 IndexPath有两个组件:section和row。