Если вы представляете а затем он не находится на navigation controller
, поэтому вы должны сначала dismiss
это боковое меню, и после его завершения вы должны нажать новый контроллер вида (говорит B или Справка). Я пишу свой фрагмент кода, который я использую в моем проекте для демонстрации,
- (IBAction)settingClick:(id)sender {
SettingViewController *svc = [self.storyboard instantiateViewControllerWithIdentifier:@"settingsScreen"];
[self dismissViewControllerAnimated:NO completion:^{
[self.vc.navigationController.navigationController pushViewController:svc animated:YES];
}];
}
Над методом толчке setting view controller
на текущем navigation controller
после увольнения side menu
Теперь главное self.vc
это объект previous viewcontroller
(Home контроллер в вашем случае, я думаю), на каком стороне было представлено меню.
Так мой SideMenuViewController
имеет свойство, как,
@property (nonatomic,strong) UIViewController *vc;
, который я ставлю с self
от предыдущего контроллера представления (в вашем случае от Home View Controller) что-то вроде,
SideMenuViewController *smvc = [self.storyboard instantiateViewControllerWithIdentifier:@"sideMenu"];
smvc.modalPresentationStyle = UIModalPresentationOverCurrentContext;
[self presentViewController:smvc animated:NO completion:^{
smvc.vc = self;
}];
И я использовали [self.vc.navigationController.navigationController pushViewController:svc animated:YES];
, т. е. два контроллера навигации, чтобы нажать, потому что у меня есть два контроллера навигации в моей иерархии взглядов, чтобы нажать этот новый контроллер.
Вы можете управлять этим в соответствии с вашей настройкой, сколько навигационного контроллера у вас есть!
Надеется, что это поможет :)
Вы нажимаете боковое меню на навигационном контроллере? или представить его? – Lion
Я представляю боковую панель на навигационном контроллере, после чего на действие меню вызывается определенный контроллер вида. –
Проверьте мой ответ !! – Lion