prepareForSegue未调用

时间:2012-02-21 15:45:28

标签: ios5 uisplitviewcontroller segue uistoryboard

我正在使用模板主详细信息应用程序。我在SplitViewController中添加了一个模态segue,并为其指定了标识符“DisplayLoginView”。

我从detailViewController中调用以下内容:

- (void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:YES];
    [self.splitViewController performSegueWithIdentifier:@"DisplayLoginView"    sender:self.splitViewController];
}

我还在detailViewController中定义了prepareForSegue方法:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    NSLog(@"Source Controller = %@", [segue sourceViewController]);
    NSLog(@"Destination Controller = %@", [segue destinationViewController]);
    NSLog(@"Segue Identifier = %@", [segue identifier]);
    if ([segue.identifier isEqualToString:@"DisplayLoginView"])
    {
        PrometheusLoginViewController *loginViewController = (PrometheusLoginViewController *)segue.destinationViewController;
        loginViewController.delegate = self;
    }
}

有关未调用原因的任何想法吗?

1 个答案:

答案 0 :(得分:6)

您要求splitViewController执行segue,但您要在detailViewController中定义prepareForSegue。他们需要在同一个对象上才能触发prepareForSegue。

相关问题