Примечание. Проблема решена.
Вот история. Я использую RevealViewController в своем проекте. Я также скрываю навигационные панели:
[self.navigationController setNavigationBarHidden];
Мой проект можно увидеть на рисунке ниже и menuButton "реализован в tabBarViewController.
Так как navigationBar скрыт из-за моего интерфейса, все tabViews (HomeViewController) не будут показывать menuButton и navigationBar, как предполагалось. Я также не использую panGestureRecognizer для запуска меню.
Это означает, что у меня есть проблема с запуском меню с помощью обычной кнопки в HomeViewController. Событие menuButton помещается в tabBarViewController.m:
_menuButton.target = self.revealViewController;
_menuButton.action = @selector(revealToggle:);
Поэтому я попытался вызвать метод из HomeViewController, чтобы запустить кнопку в tabBarViewController следующим образом:
HomeViewController.m
- (IBAction) onMenuClicked: (id)sender{
tabBar = [[tabBarViewController alloc] init];
[tabBar setupMenu]:
}
tabBarViewController.m
-(void) setupMenu{
[_realMenuButton sendActionForControlEvents:UIControlEventTouchUpInside];
[_realMenuButton addTarget:self.revealViewController action:@selector(revealToggle:) UIControlEventTouchUpInside];
}
В этом примере я попытался создать realMenuButton и обычный UIButton. Ive также попытался использовать UIBarButtonItem только для запуска @selector (highlightToggle:). Но ничего не происходит в приложении, когда я пытаюсь запустить кнопку из HomeViewController.
Не знаю, как я это сделаю. Любые другие идеи или трюки? Пожалуйста, будьте конкретны, если так! Отношения