Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/108.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何知道是否已将UITapGestureRecognizer添加到子视图_Ios_Xcode_Uiscrollview_Uitapgesturerecognizer - Fatal编程技术网

Ios 如何知道是否已将UITapGestureRecognizer添加到子视图

Ios 如何知道是否已将UITapGestureRecognizer添加到子视图,ios,xcode,uiscrollview,uitapgesturerecognizer,Ios,Xcode,Uiscrollview,Uitapgesturerecognizer,我正在添加子视图。对于每个子视图,我将添加一个手势识别器: UIImageView *imageView = [[UIImageView alloc] initWithImage:image]; imageView.frame = CGRectMake((position*1024)+200,0,image.size.width,image.size.height); UITapGestureRecognizer *singleFingerTap = [[UITapGesture

我正在添加子视图。对于每个子视图,我将添加一个手势识别器:

UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
    imageView.frame = CGRectMake((position*1024)+200,0,image.size.width,image.size.height);
    UITapGestureRecognizer *singleFingerTap = [[UITapGestureRecognizer alloc]
                                               initWithTarget:self action:@selector(singleFingerTap:)];
    singleFingerTap.numberOfTapsRequired = 1;
    [imageView addGestureRecognizer:singleFingerTap];
    [singleFingerTap release];

但是点击没有响应如何验证手势是否已被添加到子视图?

在代码后添加此项:

NSLog(@"imageView.gestureRecognizers: %@", [imageView.gestureRecognizers description]);
如果您正确添加了手势识别器,它会将每个手势识别器的描述打印到控制台。如果不是,它将在控制台中显示(NULL)或空数组


您还可以设置手势识别器代理:

[singleFingerTap setDelegate:self];
然后添加委托方法并设置断点以确保调用它:

- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer {
    NSLog(@"gestureRecognizerShouldBegin: called");
    return YES;
}

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {
    NSLog(@"shouldReceiveTouch: called");
    return YES;
}

如果要获取视图的属性,请点击。如何实现此方法:-(void)viewTap:(UIGestureRecognitor*)sender