0

У меня есть TabBarController с 4 вкладками. Когда я нажимаю ViewController на вкладке, вкладка скрывается автоматически и ее ничего не отображается в представлении. Но ViewController содержит таблицу с данными. Я также внедрил делегат tableview. Я не получаю журналы делегатов таблицы.iOS 9.0 Tabbar hide автоматически и viewcontroller исчезают в push

в AppDelegate didFinishLaunchingWithOptions()

self.window = [[UIWindow Alloc] initWithFrame: [[UIScreen В начало] границы]];

нагрузки TabBar здесь:

myAppDelegate.myTabBarController.selectedIndex = 0; 
myAppDelegate.myTabBarController.tabBar.translucent = NO; 
myAppDelegate.myTabBarController.tabBar.opaque = YES; 


location_select *tab1 = [[location_select alloc] initWithNibName:@"location_select" bundle:nil]; 
tab1.tabBarItem.image = [UIImage imageNamed:@"Restaurants.png"]; 
location_select *tab2 = [[location_select alloc] initWithNibName:@"location_select" bundle:nil]; 
tab2.title = @"Cart"; 
tab2.tabBarItem.image = [UIImage imageNamed:@"Cart.png"]; 
Deal_ViewController *tab3 = [[Deal_ViewController alloc] initWithNibName:@"Deal_ViewController" bundle:nil]; 
tab3.title = @"Deals"; 
tab3.tabBarItem.image = [UIImage imageNamed:@"Deals.png"]; 

MoreViewController *tab4 = [[MoreViewController alloc] initWithNibName:@"MoreViewController" bundle:nil]; 
tab4.title = @"More"; 
tab4.tabBarItem.image = [UIImage imageNamed:@"More.png"]; 
myAppDelegate.myTabBarController.viewControllers = [NSArray arrayWithObjects:tab1,tab2,tab3,tab4,nil]; 
[myAppDelegate.rootNav pushViewController:myAppDelegate.myTabBarController animated:YES]; 

Из Tab 4, я толкать Profile_ViewController:

Profile_ViewController *vc = [[Profile_ViewController alloc] initWithNibName:@"Profile_ViewController" bundle:[NSBundle mainBundle]]; 
[self.navigationController pushViewController:vc animated:YES]; 

И уже я применил здесь:

myAppDelegate.myTabBarController.hidesBottomBarWhenPushed=NO; 
and 
[self.tabBarController setHidesBottomBarWhenPushed:NO]; 

в viewWillAppear из Profile_ViewController , Работает Nothings. Я просто вижу пустой белый экран.

+0

вы имеете в виду вы хотите перейти приложение к другому viewCont из одной вкладки 4? – vaibhav

+0

@jamshed Вы можете поделиться более подробной информацией о том, как ваше приложение структурировано? Вы используете UINavigationController в своем приложении? –

+0

Вы можете поделиться скриншотом раскадровки? –

ответ

0
location_select *tab1 = [[location_select alloc] initWithNibName:@"location_select" bundle:nil]; 
tab1.tabBarItem.image = [UIImage imageNamed:@"Restaurants.png"]; 
location_select *tab2 = [[location_select alloc] initWithNibName:@"location_select" bundle:nil]; 
tab2.title = @"Cart"; 
tab2.tabBarItem.image = [UIImage imageNamed:@"Cart.png"]; 
Deal_ViewController *tab3 = [[Deal_ViewController alloc] initWithNibName:@"Deal_ViewController" bundle:nil]; 
tab3.title = @"Deals"; 
tab3.tabBarItem.image = [UIImage imageNamed:@"Deals.png"]; 

MoreViewController *tab4 = [[MoreViewController alloc] initWithNibName:@"MoreViewController" bundle:nil]; 
tab4.title = @"More"; 
tab4.tabBarItem.image = [UIImage imageNamed:@"More.png"]; 




UINavigationController *nav1 = [[UINavigationController alloc] initWithRootViewController:tab1]; 

UINavigationController *nav2 = [[UINavigationController alloc] initWithRootViewController:tab2]; 

UINavigationController *nav3 = [[UINavigationController alloc] initWithRootViewController:tab3]; 

UINavigationController *nav4 = [[UINavigationController alloc] initWithRootViewController:tab4]; 

myAppDelegate.myTabBarController.viewControllers = [NSArray arrayWithObjects:nav1,nav2,nav3,nav4,nil]; 
[myAppDelegate.rootNav pushViewController:myAppDelegate.myTabBarController animated:YES]; 

and then later on to push your vc to tab 4 you should do 

Profile_ViewController *vc = [[Profile_ViewController alloc] initWithNibName:@"Profile_ViewController" bundle:[NSBundle mainBundle]]; 
[nav4 pushViewController:vc animated:YES]; 

здесь Решение связано с запросом, который может помочь вам

+0

Да. Я уже это сделал. Я просто забыл, что я столкнулся с тем же вопросом 2 года назад. Независимо от того, спасибо за ваши усилия. –

+0

Все самое лучшее :) –

0

Вы могли бы сохранили архитектуру следующего Navigation Controller ---> Панель вкладок Controller -> 4 ребенка контроллеры Открыть

Вы должны сделать это Tab бар контроллера -> 4 диспетчеров по уходу за детьми (каждый из этих 4 дочерних контроллеров View, имеющих свой собственный контроллер навигации).

+0

Добавил это уже. Не работает. Панель вкладок скрыта. Но я получаю мой нажатый экран. –

+0

Нет, вы этого не сделали, ваша текущая архитектура имеет только один контроллер навигации. Я говорю, что у вас должно быть 4 разных навигационных контроллера. (Один контроллер навигации для всех ваших 4-х контроллеров) –