調べればすぐに出てくる情報ではあるのですが、今後も使いそうなので備忘録としてまとめ。
タイトル通り、Objective-C で開発中の iOS アプリで、pushViewController
を使って遷移した先のページから、rootViewController
に戻る方法についてです。
今回は、こちらの記事を参考にさせていただきました。
UINavigationControllerで2つ以上前の画面に戻る方法 – Qiita
https://qiita.com/k-yamada-github/items/65b8a8cb17fd1912aca5
なお、こちらの記事で紹介されているのは Swift
での書き方なので、Objective-C
の場合は、そのままコピー&ペーストするだけでは使えません。
ご注意ください。
さて、遷移先のページから rootViewController
に戻る方法ですが、下記のコードを実行するだけです。
[self.navigationController popToRootViewControllerAnimated:YES];
例えば、特定の処理が終わった後や、ボタンをタップしたタイミングで上記の記事を実行すれば、アプリの一番最初のページに戻ることができます。
他にも、下記の書き方でも大丈夫とのこと。
[self.navigationController popToViewController:self.navigationController.viewControllers[0] animated:YES];
navigationController
の 0番目の viewController = rootViewController に戻るという意味のようですね。
ですが、個人的には、1つ目のコードの方がシンプルな書き方なのでわかりやすいのではと思います。
まあ、動作はどちらでも同じなので、この辺りはお好きな方をお好みでお使いください。
以上、Objective-C で、pushViewController を使って遷移した先のページから、rootViewController に戻る方法についてでした。
ご参考になれば幸いです。