Итак, я добавляю распознаватель жестов в наложенный вид. При нажатии на экран я хочу, чтобы это наложение исчезло. Сказав, что добавление распознавателя жестов переопределяет «подправить внутри» и другие события нажатия кнопки. Мне нужно это вернуть, поэтому мне нужно удалить распознаватель жестов. Я могу использовать этот метод, но у меня есть проблема. Мой код ниже -
- (void)helpClicked
{
CGRect visibleBounds = [self convertRect:[self bounds] toView:viewContainer];
CGFloat minimumVisibleX = CGRectGetMinX(visibleBounds);
UIImageView * helpOverlay = [[UIImageView alloc]initWithFrame:CGRectMake(minimumVisibleX, 0, 1024, 768)];
UIImage * helpImage = [UIImage imageNamed:@"HelpOverLay.png"];
[helpOverlay setImage:helpImage];
helpOverlay.tag = 50;
self.scrollEnabled = NO;
[self addSubview:helpOverlay];
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]
initWithTarget:self
action:@selector(dismissView)];
[self addGestureRecognizer:tap];
}
Здесь я снимаю наложение с другого вида.
- (void) dismissView
{
UIView *overlay = [self viewWithTag:50];
[overlay removeFromSuperview];
self.scrollEnabled = YES;
}
Мой вопрос: как удалить распознаватель жестов во втором методе? Я не могу передать переменную tap в этот метод и не могу удалить ее в предыдущем методе. Любые указатели? Я застрял с довольно большим количеством проблем с передачей переменных, когда дело доходит до событий.