Ожидается, что окна приложений будут иметь контроллер корневого представления в конце запуска приложения, произошедшего после отключения раскадровки.

Я отключил раскадровку, изменив основную раскадровку на ничего. И я переписал все, поэтому мне не нужна раскадровка, и все работает правильно. Но в журнале консоли ожидается, что окна приложений будут иметь контроллер корневого представления в конце запуска приложения. Могу ли я просто проигнорировать сообщение, и они одобрят мое приложение после отправки? Метод didFinishLaunchingWithOptions:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];  
    self.tabBarController = [[AKTabBarController alloc] initWithTabBarHeight:65];
    SubscribeViewController *sub = [[SubscribeViewController alloc] initWithNibName:nil bundle:nil];
    UINavigationController *navControlelr = [[UINavigationController alloc] initWithRootViewController:sub];
    NewHomeViewController *home = [[NewHomeViewController alloc] initWithNibName:nil bundle:nil];
    UINavigationController *homeNav = [[UINavigationController alloc] initWithRootViewController:home];

    ReceivedPushViewController *receivedPush = [[ReceivedPushViewController alloc] initWithNibName:nil bundle:nil];

    MoreViewController *more = [[MoreViewController alloc] initWithNibName:nil bundle:nil];

    NSMutableArray *viewControllers = [NSMutableArray arrayWithArray:@[homeNav, navControlelr, receivedPush, more]];

    [self.tabBarController setViewControllers:viewControllers];
    [self.window setRootViewController:self.tabBarController];
    [self.window makeKeyAndVisible];

    return YES;
}

person yong ho    schedule 08.05.2013    source источник
comment
Сбросьте симулятор и проверьте один раз.   -  person LittleIDev    schedule 08.05.2013
comment
@Jyotishree Нет, сообщение все еще отображается.   -  person yong ho    schedule 09.05.2013


Ответы (1)


Я попробовал ваш код, проблема возникает из-за того, что вы переустанавливаете окно приложения, чего делать не нужно. Если вы просто удалите первую строку кода self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];, ваше приложение все равно будет работать, а предупреждение должно исчезнуть.

person micantox    schedule 08.05.2013
comment
Вы правы, у меня все еще был основной файл пера, и поэтому мне не нужно было выделять-инициализировать мой self.window. Теперь я действительно попробовал ваши настройки, и self.window действительно нуждается в инициализации, однако ваш код работает нормально и не дает мне никаких предупреждений (без раскадровки, без файлов xib, все делается через код)! - person micantox; 09.05.2013
comment
Вы удалили базовое имя основного файла раскадровки свойства в файле plist проекта? - person micantox; 09.05.2013
comment
Не могли бы вы создать проект с помощью раскадровки, а затем отключить раскадровку и снова попробовать код? Потому что мне интересно, что это из-за отсутствия раскадровки, но код работает, и система не могла с этим справиться. - person yong ho; 09.05.2013
comment
Я старался! Что бы я ни делал, я никогда не получаю этого предупреждения! Я пробовал: -удалить файл раскадровки без изменения настроек проекта, оставить файл раскадровки и отредактировать свойства проекта, чтобы он не использовал его, удалить файл и отредактировать свойство раскадровки проекта и даже оставить как файл раскадровки, так и имущество проекта! - person micantox; 09.05.2013
comment
Я понимаю. Могу ли я просто проигнорировать сообщение? - person yong ho; 10.05.2013