我有一个表视图,该表视图使用fetchedResultsController从核心数据管理一系列“ Venue”对象。当您选择表格视图中的行之一时,它将当前Venue对象传递到新视图(通过prepareForSegue),该视图显示Venue对象的详细信息:名称,地址,图像等。这一切正常。
我有要实现的目标,但我不确定最好还是最常规的方式。我想要与上述相同的行为,但是在初始表视图和详细信息视图之间夹有一个地图视图。因此导航堆栈如下所示:
表格视图(显示所有场地)->地图视图(显示所有场地)->详细视图(显示一个选定的场地)
目前,我有一个来自表格视图的按钮,该按钮可以切换到地图视图,并传递一个注释数组,然后将这些注释绘制在地图上。注释不包含所有场馆信息,只是为每个场馆分配了标题和副标题。每个注释都显示一个链接到详细信息视图的详细信息披露按钮。但是,从概念上来说,我在从地图视图中进行选择时如何将相关的Venue对象(当前仅在我的表格视图中可用)传递到详细信息视图上感到困惑。
我的假设是我需要按照以下步骤做一些事情:将所有Venue对象从我的表格视图传递到我的地图视图,并将它们存在于后台但未被使用。然后,当按下公开按钮时,地图视图将以某种方式检查与所选注释匹配的地点(检查title属性是否匹配?),并将其作为“所选地点”传递到详细视图上。但是,即使我有正确的想法,我也不知道如何在实践中做到最好。我的注释是否可能包含整个相关的Venue对象?还是对于详细视图以某种方式向初始表视图询问数据?
希望我能解释得足够清楚。对不起,有点罗word。我对Xcode还是很陌生,并且了解我可能忽略了一些非常简单的内容,或者在某个地方犯了基本错误。任何建议,将不胜感激!
如果只有一个选定的对象,只需将其传递到地图视图即可。地图视图可以使用其自己的获取结果控制器从数据存储中获取其所需的任何其他数据(假定重要性顺序可能与表视图不同)。
您可以将场所对象与注释相关联,但是似乎您只特别需要将一个场所传递到详细信息视图,因此应该仅将其存储为实例变量。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句