gpt4 book ai didi

iphone - 如何删除手势识别器

转载 作者:IT老高 更新时间:2023-10-28 11:35:55 30 4
gpt4 key购买 nike

所以,我将手势识别器添加到覆盖 View 中。当点击屏幕时,我希望这个覆盖消失。话虽如此,添加手势识别器会覆盖“内部修饰”和其他按钮单击事件。我需要这个,因此我需要删除gesturerecognizer。我可以使用这种方法,但是我有问题。我的代码如下 -

- (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];

}

在这里,我将覆盖从另一个 View 中移除。

- (void) dismissView
{
UIView *overlay = [self viewWithTag:50];
[overlay removeFromSuperview];
self.scrollEnabled = YES;
}

我的问题是如何在第二种方法中删除手势识别器?我不能将变量 tap 传递给这个方法,也不能在以前的方法中删除它。任何指针?在事件方面,我遇到了很多传递变量问题。

最佳答案

此循环将删除 View 具有的所有手势识别器

for (UIGestureRecognizer *recognizer in self.view.gestureRecognizers) {
[self.view removeGestureRecognizer:recognizer];
}

关于iphone - 如何删除手势识别器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10947982/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com