UINavigationControllerの取得方法

UITableViewDelegateを実装したクラスの、例えば「– tableView:didSelectRowAtIndexPath:」メソッドで別の画面をpushするのはよくある処理だと思います。その際、UITableViewDelegateを実装したクラスがUIViewControllerやUITableViewControllerのサブクラスであれば「self.navigationController」で取得できるます。しかし、別のクラスに分けている場合はUINavigationControllerをどう取得すればいいのかわからなかったので、調べてみたのでメモをしておきます。

プロジェクト名AppDelegate *app = [[UIApplication sharedApplication] delegate];
[app.navigationController pushViewController:detailViewController animated:YES];

なお、参考にしたのはstackoverflowのiPhone UITableViewDelegate Questionです。

この記事が役に立った場合、シェアしていただけると励みになります!!