Я создал структуру бокового меню, используя контроллер представления SWReveal. Что я хочу сделать, это отменить открытие контроллера правого представления на некоторых страницах. Я исследовал и нашел что-то вроде этого:SWRevealViewController rightViewController отключает открытие
- (BOOL)revealControllerPanGestureShouldBegin:(SWRevealViewController *)revealController
if([revealController.frontViewController isKindOfClass:[UINavigationController class]]){
UINavigationController *navController = (UINavigationController *)revealController.frontViewController;
UIViewController *lastViewController = navController.viewControllers.lastObject;
if([lastViewController isKindOfClass:[DetailViewController class]] ||
[lastViewController isKindOfClass:[TableDateViewController class]] ||
[lastViewController isKindOfClass:[MapViewController class]])
{
return NO; // I do not want to open it for the view controllers I want
}
}
return YES;
}
Это работает для меня, но это также повлияло на открытии левого page.There нет проблем с сенсорным действием (водопроводная жест), но это относится к лотку gesture.I означает кастрюлю жест делает не работает для контроллера представления. Я хочу работать. Я хочу работать правильно для некоторого контроллера представления, но я не хочу влиять на левую сторону. я добавил правый переключатель, как это:
-(void)sideRightMenuLoad{
[((PersonelViewController *)[self.navigationController.viewControllers objectAtIndex:0]).view addGestureRecognizer:self.revealViewController.panGestureRecognizer];
SWRevealViewController *revealViewController = self.revealViewController;
if(revealViewController){
[self.sideRightBarButton setTarget:self.revealViewController];
[self.sideRightBarButton setAction:@selector(rightRevealToggle:)];
[self.view addGestureRecognizer:self.revealViewController.panGestureRecognizer];
}
Этот код должен работать, чтобы открыть правую страницу:
[self performSegueWithIdentifier:SWSegueRightIdentifier sender:nil];
Я попытался запустить его, когда я хотел, но это не так Работа. Я жду помощи в этом отношении. Спасибо.
спасибо! это сработало для меня :) –