2012-07-29 2 views
0

Я использую следующий код, чтобы выполнить переход к другому контроллеру вид:Segue в TabBar контроллер

[self performSegueWithIdentifier:@"BackSegue" sender:self]; 

Это прекрасно работает, когда адресат «BackSegue» назвал переход является другой контроллер зрения (один из вкладки, на самом деле), но мне нужно отобразить вкладки внизу, поэтому переход непосредственно к этому контроллеру представления не будет работать, поскольку никаких вкладок не будет. Разрешено ли/возможно переходить к контроллеру панели? Что-то не так с этим конкретным кодом, или это будет что-то еще, что я делаю?

Edit 1

Контроллер TabBar не имеет .m/.h файлы и никогда не объявлял программно, но я довольно уверен, что переход настроен правильно в раскадровке, насколько мне известно, (так же, как он был настроен ранее непосредственно другому диспетчеру просмотра).

ответ

2

Вы можете перейти непосредственно к UITabBarController. Просто измените segue в своем раскадровке. Когда происходит segue, он должен загрузить контроллер панели вкладок и, следовательно, панель вкладок в нижней части экрана и представление представления первого представления, связанное с контроллером панели вкладок.

+0

это то, что я имею сделанный. К сожалению, он работает неправильно (он просто падает.) Я буду отлаживать дальше и публиковать изменения здесь. – Kgrover

+0

Ничего себе, теперь он работает отлично. У тебя волшебное прикосновение, не так ли? Я понятия не имею - код не менялся, пока я спал. Ну, единственное, что я могу указать, это, может быть, проблема рефакторинга или что-то в этом роде. – Kgrover

+0

Рад, что все получилось. –

2

Для того, чтобы непосредственно перейти к определенной закладке в контроллере панели вкладок: Вы должны добавить SelectedIndex = 1

Добавьте эти строки кода для Segue:

UITabBarController *loadTabBar = [self.storyboard instantiateViewControllerWithIdentifier:@"TasksAppsTabs"]; 
     loadTabBar.selectedIndex=1; 
     [self presentViewController:loadTabBar animated:YES completion:nil];