iPhone - Замена rootview в контроллере навигации

У меня есть проект с NavigationController, который содержит в IB первый отображаемый ViewController. Это просто шаблон по умолчанию при создании проекта.

В этом первом viewController я получаю какое-то событие, которое отправляю в appDelegate, и хочу, чтобы он заменил это корневое представление другим. Не собираюсь переходить к следующему.

Так что я делаю:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{   
    // Override point for customization after application launch.
    // Add the navigation controller's view to the window and display.
    self.window.rootViewController = self.navigationController;
    [self.window makeKeyAndVisible];
    return YES;
}

- (void) goNext {

    [self.navigationController popViewControllerAnimated:NO];

    NextViewController* nextWindow = [[[NextViewController alloc] initWithNibName:@"NextView" bundle:nil] autorelease];
    [self.navigationController pushViewController:nextWindow animated:NO];
}

Но это не работает, первый контроллер представления не отображается. А второй логически отображается с помощью кнопки возврата.

Я просто хочу заменить это первое представление другим в качестве начала процесса навигации.

40
задан Oliver 16 July 2011 в 12:11
поделиться