在我的表格视图中,我有大约500个项目的列表。用户可以搜索他们的特定项目。单击要搜索的项目的单元格时,它将执行prepareForSegue
方法。例:
当用户在搜索框中输入“ Ju”时,它将6月带到索引0,将7月带到索引1。执行segue时,如果选择June
,它将通过January
数据。这是因为它从indexPath接收引用。我的问题是如何执行segue传递June
数据而不是January
数据。
最佳答案
您正在复制数据并对其进行过滤,对吗?因此indexPath'0'在该数据集中对于6月是正确的。不要访问原始数据集,请访问过滤后的数据集。
var original = ["January", "February", "March", "April" /*, etc.. */]
var filtered = original.filter(/* some criteria, based on input of "ju" */)
然后,当您使用选定的索引路径从中读取时:
original[0] // "January"
filtered[0] // "June"
希望这可以帮助👍