私はUINavigationControllerに関する問題があります。UINavigationControllerをリセットするにはどうすればよいですか?
私は、ナビゲーションコントローラのプッシュ機能とポップ機能を切り替える3つのビューコントローラを持つアプリケーションを持っています。私は第三のビューコントローラに立っ と
を呼び出す:
問題は、これは[self.navigationController popToRootViewControllerAnimated:YES]。
これは最初のビューコントローラ(私が欲しいものです)に私をもたらしますが、次に2番目のビューコントローラに移動しようとすると、何らかの理由で3番目のビューコントローラになります。
ナビゲーションコントローラをリセットする方法はありますか、それとも間違った方法ですか?
をユーザーがカメラを起動することを決定したときに、次のコードは、ルートビューコントローラに呼び出されます。ここでは
は、私はナビゲーションコントローラをプッシュしてポップするために使用しているコードです。
if(self.cameraViewController == nil)
{
CollageCameraViewController *camView = [[CollageCameraViewController alloc] init];//WithNibName:nil bundle:[NSBundle mainBundle]];
self.cameraViewController = camView;
[camView release];
}
[self.navigationController pushViewController:self.cameraViewController animated:NO];
ユーザが写真集を撮影した後に、次のコードは、CollageCameraViewController(秒)から呼び出されます。ユーザーが戻ることを決定したときに、次のコードは、CollageRenderViewControllerから呼び出され
if(self.renderView == nil) { CollageRenderViewController *renderViewController = [[CollageRenderViewController alloc] initWithNibName:nil bundle:[NSBundle mainBundle]]; self.renderView = renderViewController; [renderViewController release]; } [self.navigationController pushViewController:self.renderView animated:YES];
メイン(ルート)ビューへ:
[self.navigationController popToRootViewControllerAnimated:YES];
今、CollageCameraViewControllerを再度プッシュしようとすると、代わりにCollageRenderViewControllerで終わるのですが、それはなぜですか?
乾杯、 アンドレアス
あなたのコードの一部を投稿して、どのようにあなたのView Controllerをプッシュ/ポップしているのか、正確に何を押してポップしているのか見ることができます。 – Jasarien