Я создал свой проект, используя Storyboards. Корень ViewController лежит внутри a Storyboard, я не записал ни одного кода в appDelegate.
Теперь я хочу показать экскурсию по моему приложению, поэтому я хочу изменить корень ViewController от Tab Bar на мой TourVC, и когда гастроли приложения закончены, я хочу снова отключить мой корень ViewController до Tab Bar.
Итак, я посмотрел онлайн и следил за следующими пунктами
1) Удалите Storyboards из файла app.plist,
2) Снимите флажок "isInitialViewController" из Storyboards, который проверяется в случае контроллера Tab Bar, потому что его корень ViewController,
3) Добавьте этот код в файл appDelegate.m.
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
ProductTourViewController *PT = [[ProductTourViewController alloc] initWithNibName:@"ProductTourViewController" bundle:nil];
self.window.rootViewController = PT;
[self.window makeKeyAndVisible];
return YES;
Но мое приложение выходит из строя с этим журналом ошибок,
[ProductTourViewController selectedViewController]: unrecognized selector sent to instance 0x1766a9e0
А также я получаю предупреждение,
Unsupported Configuration: Scene is unreachable due to lack of entry points and does not have an identifier for runtime access via -instantiateViewControllerWithIdentifier:.
Задайте идентификатор раскадровки для своего класса в главной раскадровке.