2016-12-21 2 views
0

Я работаю над объектно-ориентированным iOS-приложением, которое было впервые создано в 2011 году некоторыми обновлениями и изменениями, которые были сделаны в 2013 году. Теперь я должен выполнять эту работу, так как она сбой с ошибка:Приложение для приложения IOS после запуска экрана

Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Application windows are expected to have a root view controller at the end of application launch'

в AppDelegate я проверил:

[self.window setRootViewController:viewAfterLaunchScreen]; 

в соответствии с этим ответом "Application windows are expected to have a root view controller at the end of application launch" error when running a project with Xcode 7, iOS 9

после отладки я заметил, что приме кация падает после запуска rootViewController в viewWillAppear.

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease]; 
if ([[DAL GetPreferences:@"FIRST"] isEqualToString:@"1"]) 
{ 
    LoginViewController *lvc3 = [[LoginViewController alloc] initWithNibName:@"LoginViewController" bundle:nil]; 
    [self.window setRootViewController:lvc3]; 
    [lvc3 release]; 
} 
else if(_window.rootViewController == nil){ 

    PagingViewController *lvc2 = [[PagingViewController alloc] initWithNibName:@"PagingViewController" bundle:nil]; 
    [self.window setRootViewController:lvc2]; 
    [lvc2 release]; 
} 
[DAL SavePreference:@"FIRST" :@"1"]; 
[self.window makeKeyAndVisible]; 
return YES; } 
+1

Возможный дубликат [ "окна приложений, как ожидается, иметь контроллер представления корнем в конец запуска приложения "при запуске проекта с Xcode 7, iOS 9] (http://stackoverflow.com/questions/30884896/application-windows-are-expected-to-have-a-root-view-controller- at-the-end-of-a) – Mahesh

+0

@Mahesh Я проверил этот ответ, прежде чем публиковать мой вопрос, и я уже упоминал, что я проверил setRootViewController. –

+0

Покажите свой метод 'didFinishLaunchingWithOptions'. – Mahesh

ответ

0

Сколько лет этот «старый» проект? Если это больше, чем несколько лет, вы до сих пор:

[window addSubview:viewController.view]; 

Вы должны вместо этого заменить его:

[window setRootViewController:viewController]; 
Смежные вопросы