好的所以我对XCode和IOS很新,但基本上我的意思是:
我有一个分割视图控制器,在我的应用程序中用于显示左侧(在主视图控制器中)吸引力或活动的少量基本信息,并向用户显示选项/评论/或其他详细视图控制器中的选择。
现在我要做的是: - 当用户从详细视图中动态生成的景点表中选择一个景点时,我希望它不仅触发一个segue,在细节视图中显示更多关于该景点的信息,还会触发主视图中的segue变为a短暂的吸引力。
有谁知道我会怎么做?我正在使用Xcode 5
感谢您的帮助
截图可以在这里找到:
答案 0 :(得分:0)
有很多方法可以解决这个问题,但最好的方法是实现一个自定义协议委托范例,该范例将在主视图中触发一段代码,然后在该视图中调用segue。
在这个关于导航堆栈的问题中存在类似的问题,但它也适用于并发控制器:
How do I set up a simple delegate to communicate between two view controllers?
以下是Apple关于协议的基础知识:
简而言之,您将在主视图中定义一个协议,其中一个方法根据详细视图中的选定单元格调用segue,您也可以通过该方法传递位置模型。 / p>
@protocol LocationDelegate
- (void)didSelectLocation:(MyLocation *)location;
@end
您的景点表会有一个委托属性,指向您在创建时设置的主视图。
@property (nonatomic, weak) id <LocationDelegate> *delegate;
当您在景点表中选择一个单元格时,您可以调用委托方法来实现它的魔力。
[self.delegate didSelectLocation:location];