Допустим, у меня есть 4 контроллера представления (назовите их FirstView, SecondView, ThirdView, FourthView), которые создаются программно и все находятся в отдельных файлах:
В методе AppDelegate.m didFinishLaunchingWithOptions у меня есть эти строкикод
self.rootViewController = [[rootViewController alloc]initWithNibName:@"rootViewController" bundle:nil];
self.window.rootViewController = self.rootViewController;
В методе loadView rootViewController.m у меня есть
self.view = [[UIView alloc]initWithFrame:[UIScreen mainScreen].applicationFrame];
self.firstView = [[FirstView alloc]init];
[self.view addSubview:self.firstView.view];
Этот код работает нормально - отображается первый вид.
Давайте продолжим
В методе FirstView.m switchViews
ПРИМЕЧАНИЕ. См. Комментарии в коде
self.secondView = [[SecondView alloc] initWithNibName:@"SecondView" bundle:nil];
// I think here secondView is added to rootViewController - right ?
[self.view.superview addSubview:self.secondView.view];
// Here first view is removed from rootViewController - right ?
[self.view removeFromSuperview];
Вот как я могу добавлять / удалять представления.
Является ли этот подход правильным?Можете ли вы порекомендовать лучшее решение?
Я читал об UINavigationController, но не думаю, что в этом случае это может быть решением.