何が間違っているのかわかりませんが、簡単な例を次に示します。
@interface Test : NSObject<UIGestureRecognizerDelegate> {
UIView *_someParentView;
UIView *_someChildView;
}
- (id)initWithParentView:(UIView *)parentView;
@end
@implementation Test
- (id)initWithParentView:(UIView *)parentView
{
if (self = [super init])
{
_someParentView = parentView;
}
return self;
}
- (void)addSubViewsWhenReady
{
_someChildView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
_someChildView.backgroundColor = [UIColor blackColor];
[_someChildView setUserInteractionEnabled:YES];
[_someParentView addSubview:_someChildView];
UITapGestureRecognizer *singleFingerTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleSingleTap:)];
singleFingerTap.delegate = self;
[_someChildView addGestureRecognizer:singleFingerTap];
}
- (void)handleSingleTap:(id)sender
{
NSLog(@"handle the single tap");
}
@end
出力: 「単一のタップを処理する」はログに記録されません。私が間違っていることについてのアイデアはありますか?
ありがとう!