На самом деле нет.rootViewController является основным контроллером.Обратные вызовы, такие как didReceiveMemoryWarning , будут отправляться только rootViewController.И он должен решить, кому он адресован.
Окно содержит любое количество просмотров.Некоторые из них имеют UIViewControllers, некоторые нет.Так что [self.window addSubview: switchViewController.view]; просто добавьте представление в окно, оно ничего не знает о своем контроллере.Контроллеры должны управляться rootViewController.Единственный способ установить switchViewController как rootViewController - это вызвать что-то вроде self.rootViewController = switchViewController; в вашем файле AppDelegate.