次の方法で簡単に前のページに移動できることを知っていviewController
ます。
[self.navigationController popViewControllerAnimated:YES];
ただし、前のビューではなく、n-2 または n-3 ビューにポップすることは可能ですか?
はい。ただし、別の方法で行う必要があります。まず、ナビゲーション コントローラーからビュー コントローラーの現在のスタックを取得します。
NSMutableArray *viewControllers = [self.navigationController.viewControllers mutableCopy];
配列を変更可能にしたことがわかるコードでは、配列を操作できるようになりました。
NSRange range = NSMakeRange(2, 2);
[viewControllers removeObjectsInRange:range];
ここでは、位置 2 から 2 つのビュー コントローラーを削除します。もちろん、アレイからコントローラーを削除/追加する方法は他にもたくさんあります。
次に、新しい配列を navigationController に割り当てます。
[self.navigationController setViewControllers:viewControllers animated:YES];