-1

我有一个带有搜索栏、索引栏和部分的表格视图。在我的表格视图中,我显示了机场的名称。当我单击其中一个名字时,我会看到一个新视图,其中包含有关该人的更多信息。我的问题是,在每个部分之后 indexpath.row 开始重新计算。因此,如果我转到第 3 部分并选择该部分下方的第一行,则 indexpath.row 为 0。因此,我将始终获得有关第一部分中名称的更多信息。

例子:

==A部分==

阿姆斯特丹机场1

阿姆斯特丹机场2

阿姆斯特丹机场3

==B部分==

布鲁塞尔机场1

布鲁塞尔机场2

如果我在列表中选择“Brussels airport1”,则 indexpath.row 返回 0。因此,如果我在数组中使用它,它将表现得好像我选择了“Amsterdam airport1”,因为这是我数组中的第一项。

我有一个名为 airports 的数组,我用它来为 indexbar 创建一个名为 airportDictionary 的字典。Then when an item is selected I use the indexpath.row to check in my airports array which airport I have selected.

有谁知道如何解决这个问题?如果您需要更多解释或代码,请询问!

4

3 回答 3

5

NSIndexPath有一个确切的东西 -section并且row可以用来区分它的位置。

阿姆斯特丹机场1

indexPath.section == 0
indexPath.row     == 0

布鲁塞尔机场1

indexPath.section == 1
indexPath.row     == 0
于 2013-11-07T16:16:14.600 回答
2

您需要正确组织数据。有一个数组数组。外部数组表示部分,每个内部数组表示该部分的行。

用于indexPath.section访问正确的外部数组,然后使用indexPath.row访问节数组中的正确值。

于 2013-11-07T16:16:24.283 回答
0

那是什么部分的意思。例如,如果第 1 节有两行,则索引路径有两个值,即 0-0 和 0-1,然后如果第 2 节再次有两行,则索引路径又有两个值 1-0 和 1-1。

于 2014-10-21T12:10:46.667 回答