prepareforsegueは呼ばれていません
-
28-10-2019 - |
質問
テンプレートマスターディテールアプリケーションを使用しています。 SplitViewControllerからモーダルセグエを追加し、識別子「DisplayLoginView」を与えました。
私は私の詳細viewcontrollerから以下に電話します:
- (void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:YES];
[self.splitViewController performSegueWithIdentifier:@"DisplayLoginView" sender:self.splitViewController];
}
また、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;
}
}
なぜそれが呼ばれていないのかという考えはありますか?
解決
SplitViewControllerにSegueを実行するように依頼していますが、詳細ViewControllerでPrepereForsegueを定義しています。彼らは、PrepareSegueをトリガーするために同じオブジェクトにいる必要があります。
所属していません StackOverflow