prepareForSegue не называется - PullRequest
       51

prepareForSegue не называется

2 голосов
/ 21 февраля 2012

Я использую приложение шаблона Master Detail. Я добавил модальный переход от SplitViewController и дал ему идентификатор «DisplayLoginView».

Я вызываю следующее из моего detailViewController:

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

У меня также есть метод prepareForSegue, определенный в detailViewController:

- (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 Ответ

6 голосов
/ 21 февраля 2012

Вы просите splitViewController выполнить переход, но вы определяете prepareForSegue в detailViewController. Они должны быть на одном и том же объекте для запуска prepareForSegue.

...