-2

appDelegate で、self.window.rootViewController になる A_NavigationController を作成し、rootViewController になるように X_ViewController を設定します。別の viewController がプッシュされた後、新しい B_NavigationController を作成し、新しい Y_ViewController を rootViewController になるように設定し、presentModalViewController メソッドを使用します。 B_NavigationeController を追加しました。今私がやりたいのは、Y_ViewController を閉じたときに、A_NavigationController の rootViewController を変更できることです。

     self.viewController = [[AViewController alloc] initWithNibName:@"AViewController" bundle:nil];
    self.navCon=[[UINavigationController alloc]initWithRootViewController:self.viewController];

    self.window.rootViewController = self.navCon;


  BViewController *bView=[[BViewController alloc]initWithNibName:@"BViewController" bundle:nil];
        UINavigationController *navCon=[[UINavigationController alloc]initWithRootViewController:bView];
        [self.navigationController presentModalViewController:navCon animated:YES];

//in BViewController.m
//I want a method to change the window's rootViewController.
4

1 に答える 1

0

「rootViewController」は、navigationStack の下部にある UIViewController のみです。それを変更するには、インデックス 0 のオブジェクトを任意のコントローラーに設定するだけです。

于 2012-04-17T02:46:10.410 に答える