我有一个视图控制器(vc1),我在其中添加了另一个视图控制器(vc2)作为子视图。当您点击子视图 (vc2) 中包含的视图 (tappingView) 时,将触发 UITapGestureRecognizer。我想在子视图控制器(vc2)中处理这个点击,而不是从第一个视图控制器(vc1)......但是当我点击我的视图时它会一直崩溃。
这是层次结构总结:
-vc1
--vc2
---点击查看
这是一个代码示例:
ViewController1 (viewDidLoad):
- (void)viewDidLoad
{
ViewController2 *vc2 = [[ViewController2 alloc] init];
[[self view] addSubview:[vc2 view]];
}
ViewController2 (viewDidLoad):
- (void)viewDidLoad
{
UIView *tappingView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 60.0, 80.0)];
[[self view] addSubview:tappingView];
UITapGestureRecognizer *tapGestureRecognize = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(singleTapGestureRecognizer:)];
[tappingView addGestureRecognizer:tapGestureRecognize];
}
ViewController2 (singleTapeGestureRecognizer:):
- (void)singleTapGestureRecognizer:(id)sender {
NSLog(@"Tap gesture");
}
当我在我的视图中单击 (tappingView) 时,我不断遇到崩溃 (BAD_ACCESS)。
有人知道为什么吗?