По сути, вам нужно вставить контроллер представления вкладок в стек контроллера контроллеров навигации.
Начиная со свежего шаблона "Навигационное приложение". Я добавил следующий метод в RootViewController.m:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
//Navigation logic may go here. Create and push another view controller.
UIViewController *viewOneViewController = [[UIViewController alloc] init];
viewOneViewController.title = @"One";
viewOneViewController.view.backgroundColor = [UIColor redColor];
UIViewController *viewTwoViewController = [[UIViewController alloc] init];
viewTwoViewController.title = @"Two";
viewTwoViewController.view.backgroundColor = [UIColor orangeColor];
UIViewController *viewThreeViewController = [[UIViewController alloc] init];
viewThreeViewController.title = @"Three";
viewThreeViewController.view.backgroundColor = [UIColor greenColor];
UITabBarController *anotherViewController = [[UITabBarController alloc] init];
anotherViewController.viewControllers = [NSArray arrayWithObjects:viewOneViewController, viewTwoViewController, viewThreeViewController, nil];
[self.navigationController pushViewController:anotherViewController animated:YES];
[anotherViewController release];
}
Изменил это на 25, чтобы проверить:
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return 25;
}
Теперь, когда я буду строить и запускать, я посмотрю, что вы ищете, в основном. После того, как вы начнете работать, вы захотите изменить UIViewControllers на пользовательские подклассы, которые вы создаете для хранения кода для каждого представления. (Если вы также используете Interface Builder, измените init на initWithNibNamed:).
Надеюсь, это поможет вам немного продвинуться.