2016-07-01 7 views
0

Я новичок в мире iOS. Я создаю одно приложение для примера с табуляцией.вкладка не отображается в контроллере второго взгляда

В первом виде-контроллере есть одна кнопка, когда я нажимаю эту кнопку, она переходит ко второму диспетчеру просмотра. Во втором контроллере просмотра я использую один gridview, и я оставил 100 пробелов внизу.

Теперь во втором контроллере просмотра я должен добавить одну панель вкладок, поэтому я перехожу к Editor->Embedin->Tabbar controller и запускаю приложение, но я не вижу панель вкладок здесь. Я также пытаюсь использовать контроллер панели вкладок в библиотеке объектов, но та же проблема, которую я нашел ,

Почему панель вкладок не отображается во втором представлении-контроллере. Любое предложение?

нажатие кнопки событие: -

SecondVC *vc=[self.storyboard instantiateViewControllerWithIdentifier:@"SecondVC"]; 

[self.navigationController pushViewController:vc animated:YES]; 

Спасибо.

+0

Можете ли вы опубликовать свой код. Событие нажатия кнопки – Puvanarajan

+0

SecondVC * vc = [self.storyboard instantiateViewControllerWithIdentifier: @ "SecondVC"]; [self.navigationController pushViewController: vc animated: YES]; – arpit

+0

Я предполагаю, что вы вызываете непосредственно второй viewcontroller. Вот почему он загружает второй контроллер представления. – Puvanarajan

ответ

1

Если у вас есть SecondVC встроенный в TabBarVC вам нужно представить TBVC вместо SecondVC для того, чтобы панель вкладок на самом деле появляются.

Так вместо того, чтобы делать:

SecondVC *vc=[self.storyboard instantiateViewControllerWithIdentifier:@"SecondVC"]; 

[self.navigationController pushViewController:vc animated:YES]; 

вам нужно сделать:

TabBarVC *vc=[self.storyboard instantiateViewControllerWithIdentifier:@"TabBarVC"]; 

[self.navigationController pushViewController:vc animated:YES]; 

Это добавит к навигации стек Tab Bar View Controller.

Это может быть реализация вы ищете TabBarVC inside NavC

+1

Спасибо. теперь работает. – arpit

+0

У меня есть еще один вопрос после этого.После нажатия кнопки он переходит в панель вкладок, но когда я нажимаю кнопку «назад», приложение выдает сообщение об ошибке: «Завершение приложения из-за неперехваченного исключения» NSInvalidArgumentException », причина:« Невозможно добавить себя как subview » " если я проверяю его на google и меняю анимацию, да нет, поэтому он не сбой: - [self.navigationController pushViewController: vc animated: NO]; , но когда я нажимаю кнопку «В первый раз», он снова переходит к контроллеру панели табло, т.е. встроенный во второй vc, если я нажму кнопку второй раз назад, теперь они идут на первый vc. любое предложение ? – arpit

+0

@arpit Я не уверен, что правильно понял проблему, но звучит так: http://stackoverflow.com/a/21226801/2745324 – APesate

0

Кнопка ViewController SecondVC установить непосредственно перейти идентификторов имя как Pass

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 
{if ([[segue identifier] isEqualToString:@"Pass"]) 
{ 
SecondVC* vc = [[SecondVC alloc] init]; 

VC = (SecondVC ) [[(UINavigationController) [[self.tabBarController viewControllers] objectAtIndex: 0] viewControllers] objectAtIndex: 0] ;

} 
} 
Смежные вопросы