iOS を使用すると、15 個の ViewController があり、ある ViewController から別の View Controller にポップしたいと考えています。
私はこのコードを使用しています:
SecondViewController *Sec=[SecondViewController alloc]init];
[self.navigationController popViewController:Sec animated:YES];
これはエラーthis ViewController not exist
を示しており、次のコードを使用しています:
NSArray *array = [self.navigationController viewControllers];
[self.navigationController popToViewController:[array objectAtIndex:1] animated:YES];
このコードは、firstViewController から secondViewController にポップするのに適しています。しかし、9 番目 (9 番目) の ViewController から 5 番目 (5 番目) の ViewController にポップするとどうなるか、9 番目 (9 番目) の ViewController でこのコードを使用しています。
NSArray *array = [self.navigationController viewControllers];
[self.navigationController popToViewController:[array objectAtIndex:4] animated:YES];
9 番目 (9 番目) の ViewController から 5 番目 (5 番目) の ViewController にポップするのではなく、9 番目 (9 番目) の ViewController を 8 番目 (8 番目) の ViewController にポップします。この行を使用したときに何が起こったのかわかりません:
NSArray *array = [self.navigationController viewControllers];
NsLog(@"array = %@",array);
でこれを使うとNinth(9th)ViewController
。NsLog は次のことを示します。
array= First(1st)ViewController;
Second(2nd)ViewController;
Eight(8th)ViewController;
Ninth(9th)ViewController;
4 つのビュー コントローラーしか表示されない理由がわかりません。15個のView Controllerを使用しているときはいつでも。この問題は、各ビュー コントローラーで発生します。たとえば、pop form 15th(15th)ViewController から Fifth(5th)ViewController を使用している場合、同じ問題が発生します。
NSArray *array = [self.navigationController viewControllers];
NsLog(@"array = %@",array);
array= First(1st)ViewController;
Second(2nd)ViewController;
fourteenth(14th)ViewController;
fifteenth(15th)ViewController;
Number of ViewControllers をカウントしてから、特定の ViewController にポップしたい。