ビューを他の2つのビューコントローラー(BおよびC)にプッシュする2つのボタンを含むビューコントローラー(A)があります。ビューコントローラーBはビューをビューコントローラーCにプッシュでき、ビューコントローラーCもビューをビューコントローラーBにプッシュできます。循環ナビゲーションがあります。すべてのビュー コントローラーには、独自のナビゲーション コントローラーがあります。ARCを使用しています。どうすればこれに対処できますか? ありがとう。
質問する
332 次
1 に答える
2
1 つだけ使用してくださいUINavigationController
。A
そのコントローラーを使用して、コントローラーをルートコントローラーとして設定します。C
そのView Controllerから、を呼び出すことで、同じナビゲーションコントローラーで「B」またはコントローラーをプッシュできます[self.navigationController pushViewController:yourDesiredViewController animated:YES];
。しかし、あなたがそうで、ここからyourDesiredViewController
別のものをプッシュviewController
している場合、同じものから来た可能性があり、スタックviewController
に同じものがあるでしょう. これを回避するために、(B) または (C)でこれを行うことができますviewControllers
navigationController
secondViewController
//If the user has chosen to add new user then the viewcontroller will be popped....
for (UIViewController *aVC in self.navigationController.viewControllers)
{
if ([aVC isKindOfClass:[DesiredViewController class]])
{
[self.navigationController popToViewController:aVC animated:YES];
return;
}
}
[self.navigationController pushViewController:yourDesiredViewController animated:YES];
yourDesiredViewController
すでにそこに存在する場合はポップするかyourDesiredViewController
、スタックにないのでプッシュします。あなたB
とC
コントローラーでそれをしてください。
于 2013-10-19T15:35:02.860 に答える