Я создаю приложение, которое использует несколько типов экранов - все, что гарантирует их собственные настраиваемые контроллеры представлений. Я успешно переключаюсь между контроллерами представления и связанными с ними представлениями, переназначив основной window
rootViewController
с помощью метода в моем делете приложения следующим образом:
- (void)changeRootViewController:(NSString *)controllerName
{
if (controllerName == @"book") {
rootViewController = (UIViewController *)[[BookViewController alloc] init];
[self.window setRootViewController:rootViewController];
} else if (controllerName == @"something_else") {
// Use a different VC as roowViewController
}
}
То, как я делаю это, похоже, просто не может быть лучшей практикой. Я не хочу использовать UINavigationController
или UITabBarController
как rootViewController
. Это неправильный способ сделать это, и если да, то как я должен приближаться к этому по-другому?
Я думал, что это было бы где-то покрыто, но (я чувствую себя так), я искал чертову из него, искал связанные вопросы и т.д. Извините, если я что-то пропустил!