へのログインが成功する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
この値を渡すためだけにサブクラス化する必要がありますか? 乱雑に見えます。