Tap Жеста подтаблица сенсорного обнаружить
Я создаю выдвижной ящик
self.isShowMenuVC = NO;
_menuView = [MenuViewController viewController];
[self.menuView setDelegate:self];
[self addChildViewController:self.menuView];
[self.menuView.view setFrame:CGRectMake(-kMenuTableWidth, 0, kMenuTableWidth, self.view.frame.size.height)];
[self.view addSubview:self.menuView.view];
[self.menuView didMoveToParentViewController:self];
UITapGestureRecognizer *outsideTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(outsideTapped:)];
[self.view addGestureRecognizer:outsideTap];
outsideTap.delegate = self;
и при нажатии кнопки водопроводного я просто установить кадр _menuView.view
вести себя как ящик
то, что я хочу, чтобы обнаружить связь вне ящика, но я не в состоянии это сделать
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {
if (touch.view == self.menuView.view) {
NSLog(@"Touch Drawer");
} else {
NSLog(@"Touch Outside");
}
return YES;
}
но всегда показывают Прикосновение Снаружи»
я что-то отсутствует, но не знаю, что заранее спасибо
Также попробуйте 2 жест, но не работает, потому что один жест в self.view так, когда Я нажимаю на вызов метода вызова 2 раза.
для этого я попытался отключить один жест, по-прежнему называя два раза
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {
if (gestureRecognizer == self.touchInDrawer) {
NSLog(@"Touch in drawer");
[self.touchOutSideDrawer setEnabled:NO];
} else {
NSLog(@"Outside");
[self hideMenuView];
}
return YES;
}
Я пробовал, что не работает, потому что я добавил жест в self.view, поэтому, когда я нажимаю на drawer gesture delegate method fire 2 раза –
попытайтесь реализовать метод делегата: - (BOOL) gestureRecognizer: (UIGestureRecognizer *) gestureRecognizer shouldRecognizeSimultaneousWithGestureRecognizer: (UIGestureRecognizer *) otherGestureRecognizer и просто вернуть NO; –
Также попробуйте реализовать метод: - (BOOL) gestureRecognizerShouldBegin: (UIGestureRecognizer *) gestureRecognizer –