gpt4 book ai didi

iphone - UITapGestureRecognizer 操作未触发; userInteractionEnabled 已设置为 YES

转载 作者:行者123 更新时间:2023-12-03 20:54:05 27 4
gpt4 key购买 nike

我的程序基本上是这样的:

UIViewController -> 自定义 UIView -> [UIImageView 数组]

我的问题是我的识别器的操作方法从未被调用。我已经将 UIImageViews 的 userInteractionEnabled 属性设置为 YES。

在我的 View Controller 的 viewDidLoad 上:

- (void)viewDidLoad
{
NSEnumerator *enumerator = [grid.subviews objectEnumerator];
UIImageView *view;
UITapGestureRecognizer *recognizer;

while((view = [enumerator nextObject])){
recognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(openDeal:)];

view.userInteractionEnabled = YES;
recognizer.delegate = self;
recognizer.numberOfTapsRequired = 1;
[view addGestureRecognizer:recognizer];
NSLog(@"%d", (int)view.userInteractionEnabled);
[recognizer release];
}
[super viewDidLoad];
}

openDeal 的定义如下:

-(void) openDeal:(UITapGestureRecognizer *) recognizer{
NSLog(@"%@",[NSString stringWithFormat:@"%d", recognizer.view.tag]);
}

最佳答案

我遇到了同样的问题,后来发现我将相同的手势识别器实例分配给另一个 View 。手势识别器只能与单个 View 关联(您可以通过 UIGestureRecognizer 的 view 属性进行验证)。

确保您没有在代码的其他地方重复使用识别器。

关于iphone - UITapGestureRecognizer 操作未触发; userInteractionEnabled 已设置为 YES,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6518699/

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