Iphone:如何在 didSelectRowAtIndexPath 中获取数组值?

Posted

技术标签:

【中文标题】Iphone:如何在 didSelectRowAtIndexPath 中获取数组值?【英文标题】:Iphone : How to get array value in didSelectRowAtIndexPath? 【发布时间】:2012-03-20 13:38:10 【问题描述】:

我正在使用 google Api 进行自定义搜索并完成了 json 解析。我成功地从 JSON 中检索了值并将该数据存储在 Dictionary 中。

 NSArray     *latestdata = [(NSDictionary*)[responseString JSONValue] objectForKey:@"items"];

现在我有两个数组链接和标题

titleArray = [latestdata valueForKey:@"title"];
linkArray = [latestdata valueForKey:@"link"];

现在我使用标题数组将标题存储在 CellForRowAtIndexpath 中,并且我想在 DidSelectIndexPathAtRow 处使用指定或选定索引的链接。

我已经用下面的标题数组填充了单元格

cell.textLabel.text = [title objectAtIndex:indexPath.row];

但是现在当我在表中选择行时,我如何使用 didSelectRowAtIndexPath 方法中的链接数组获取该行的链接。

有什么办法可以解决这个问题。

【问题讨论】:

【参考方案1】:

didSelectRowAtIndexPath尝试以下代码

NSLog("Value : %@", [title objectAtIndex:indexPath.row]);

我希望title 是全局数组。

【讨论】:

【参考方案2】:

您将使用与设置标题相同的范例。您可以在 didSelectRowAtIndexPath 中使用 indexPath.row

我担心的是确保阵列同步。使用 Map 获取数据会不会更好?如果您更舒服,您可以将标题存储在一个数组中,因为解析该数组来构建您的表格非常简单。但是你怎么知道标题数组中每个位置的元素与链接数组的相应成员匹配呢?您确定[title objectAtIndex: 1][link objectAtIndex: 1] 中的所需链接匹配吗?在我看来,键值编码将强化这一点,并为您提供更易于维护的解决方案。

祝你好运。

【讨论】:

以上是关于Iphone:如何在 didSelectRowAtIndexPath 中获取数组值?的主要内容,如果未能解决你的问题,请参考以下文章

用户在 didSelectRowAt 方法中选择原始数据后如何显示视图控制器 4 秒

如何使 didSelectRowAt IndexPath 与自定义委托一起使用

如何在 swift 中从情节提要中的 didSelectRowAt indexPath 打开视图标签栏控制器?

为自定义单元格调用 didSelectRowAt 索引

TableView _:didSelectRowAt: 仅在滑动触摸时触发

无法让 didSelectRowAt 为 TableView 工作