へのログインが成功するLoginViewControllerとloginSegue、SASlideMenuRootViewControllerそれ自体viewDidLoadが自動的にleftMenuセグエ (自分の に設定したものMenuViewController) を探し、これを leftMenu プロパティとして設定します。
LoginViewControllerこれはすべてうまく機能しますが、依存関係を からに渡す方法がわかりませんMenuViewController。
これを行う通常の方法として次のことを試しましたが、明らかにleftMenuプロパティがまだ構成されviewDidLoadておらず、この後まで実行されないため失敗します。
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"loginSegue"])
{
// This works
SASlideMenuRootViewController *slideViewController = (SASlideMenuRootViewController *)segue.destinationViewController;
// menuViewController is nil :(
MenuViewController *menuViewController = (MenuViewController *)slideViewController.leftMenu;
// I want to pass this along
menuViewController.account = self.account;
}
}
SASlideMenuRootViewControllerこの値を渡すためだけにサブクラス化する必要がありますか? 乱雑に見えます。