【发布时间】:2013-03-23 19:01:54
【问题描述】:
我需要从弹出视图的推送视图(嵌入在导航控制器中)调用我的主视图控制器('showDetails:')上的委托方法。这一切都来自故事板设置。
层次结构是:主视图->弹出框(导航控制器中嵌入的菜单表视图)->弹出框辅助视图(推送到弹出框导航控制器上)
我知道如何使用 prepareForSegue 在弹出框上设置委托,但不是在内部视图上。 如何从弹出框的内部(推送)视图调用主视图上的委托方法?
这是我在弹出主视图上设置委托的方式:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString:@"segueSearchResults"]) {
//Dismiss User Popover
[self dismissUserPopover];
SearchResultsViewController *vc = segue.destinationViewController;
vc.searchDelegate = self;
self.searchPopover = [(UIStoryboardPopoverSegue *)segue popoverController];
self.searchPopover.delegate = self;
}
}
【问题讨论】:
-
我不确定您是否正确使用了子视图一词。最后一个控制器是弹出框控制器的子视图控制器,还是推送到最后一个控制器?
-
对不起,是的,这是一个“推”的观点,而不是孩子。我会纠正主要问题。
标签: ios delegates nsnotificationcenter popover childviews