Я создаю приложение iOS, где у меня панель вкладок + боковое меню.
Панель вкладок имеет 5 элементов, а в боковом меню - около 12 меню.
Все функциональные возможности бокового меню находятся на вкладке 1, а боковое меню доступно для всех видов в панели вкладок.
Это означает, что если я нахожусь на вкладке 2, даже я могу получить доступ к боковому меню. Когда я нажимаю на элемент бокового меню из вкладки 1, я перехожу на вкладку 1, а затем навигация будет происходить.
Что я хочу сделать, скажем, если я нажму на меню "Жалобы" из бокового меню, я хочу перейти в "ComplainsViewController".
Код, который я использовал, приведен ниже.
// go to first tab
self.tabBarController.selectedIndex = 0;
// now navigate
ComplainsViewController *sViewCon = [self.storyboard instantiateViewControllerWithIdentifier:@"Complains"];
CATransition *transition = [CATransition animation];
transition.duration = 0.5;
transition.type = kCATransitionFade;
[self.navigationController.view.layer addAnimation:transition forKey:kCATransition];
[self.navigationController pushViewController:sViewCon animated:NO];
У меня есть два сценария.
Сценарий 1 (правильный)
Я нахожусь на вкладке 1 и нажимаю "Жалобы" из бокового меню. Когда я нажимаю, я успешно перехожу к ComplainsViewController, используя вышеприведенный код.
Сценарий 2 (In-Correct)
Я нахожусь на вкладке 2 и нажимаю "Жалобы" из бокового меню. Когда я нажимаю, я успешно перехожу на вкладку 1, но я не перехожу к ComplainsViewController. Когда я нажимаю обратно на вкладку 2, я вижу, что в Tab 2 открыта функция ComplainsViewController.
Любая идея, как сначала переключиться на вкладку, а затем перейти к другому диспетчеру просмотра?
Изменить 1
Ниже приведена базовая структура.