Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/114.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 在分区UITableView中选择了索引路径_Ios_Objective C_Uitableview - Fatal编程技术网

Ios 在分区UITableView中选择了索引路径

Ios 在分区UITableView中选择了索引路径,ios,objective-c,uitableview,Ios,Objective C,Uitableview,正如您在下面链接的图片中所看到的,当我选择第一行时,所选行索引返回0。当我选择第二行时,它也返回0,当我选择第三行时,它返回1 这是为什么?我如何确定实际选择了什么 这是因为你必须看这些章节 它确实是第一行,但属于第0节、第1节等 概括地说,您的行数为0,与您的节数相同,因为每个节中都有行 第0节假设A,因为您有类似电话簿的内容: 亚伯拉罕·林肯0 阿拉丁和第1排 阿布拉卡达布拉罗2号 第1节字母b 博布罗0 布兰德莱罗1号 第2节c: 灰渣0 Cinemonrow 1 卡约纳罗2号 代码: 他

正如您在下面链接的图片中所看到的,当我选择第一行时,所选行索引返回0。当我选择第二行时,它也返回0,当我选择第三行时,它返回1

这是为什么?我如何确定实际选择了什么


这是因为你必须看这些章节

它确实是第一行,但属于第0节、第1节等

概括地说,您的行数为0,与您的节数相同,因为每个节中都有行

第0节假设A,因为您有类似电话簿的内容:

亚伯拉罕·林肯0 阿拉丁和第1排 阿布拉卡达布拉罗2号 第1节字母b

博布罗0 布兰德莱罗1号 第2节c:

灰渣0 Cinemonrow 1 卡约纳罗2号 代码:


他们是不同的部门。 每节中的行以索引0开头。
IndexPath有两个组件:节和行。

这是正确的。。。如果需要第一行,则必须检查indexPath.section==0&&indexPath.row==0。因此,在您的情况下,您必须同时检查节和行,但我的表视图中有28个节。图片是示例,请举一个示例。例如,我有一个带有动态节和行的电话簿。e、 当我选择Cinemon时,返回5 Cinemon不是5,Cindy是5:Cinemon是6,但没关系。您可以执行以下操作:对每个部分的行数求和,然后添加当前行。请将您链接的图片放入问题中实际显示的位置。最好不要让这些东西依赖于非stackoverflow资源,因为它们可能会消失,使问题在将来变得不那么容易理解。要执行此操作,请编辑问题并单击图像图标,该图标是您单击的图标右侧的3个图标,以添加链接。然后可以将链接指定为基于web的位置。我不只是在中编辑它,因为版权不允许我这样做。
-(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)
        {

        }
    }
}
NSInteger rowNumber = 0;

for (NSInteger i = 0; i < indexPath.section; i++) {
    rowNumber += [self tableView:tableView numberOfRowsInSection:i];
}

rowNumber += indexPath.row;