Jak*_*ake 2 objective-c uitableview ios uitapgesturerecognizer
我有UITableView几个UITableViewCells在里面.因为我只有几个单元格,所以表格视图的某个区域没有被单元格覆盖.我想在点击空白区域时做点什么.
我尝试UITapGestureRecognizer在表视图上添加一个.它检测到空区域的敲击,但随后细胞无法响应敲击.我尝试在表视图的超级视图上添加点击手势识别器,但结果是一样的.
必须有办法做到这一点,但我还不能弄明白.有没有办法实现我想做的事情?
试试这个:初始化并将UITapGestureRecognizer添加到tableView:
UITapGestureRecognizer *gr = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tap:)];
gr.delaysTouchesBegan = YES;
gr.delegate = self;
[_tableView addGestureRecognizer:gr];
Run Code Online (Sandbox Code Playgroud)
实现手势识别器委托方法:
-(BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer{
CGPoint tapPoint = [gestureRecognizer locationInView:_tableView];
UIView * clickedView = [_tableView hitTest:tapPoint withEvent:nil];
NSString *viewClassName = NSStringFromClass(clickedView.class);
return ![viewClassName hasPrefix:@"UITableViewCell"];
}
Run Code Online (Sandbox Code Playgroud)
这样一来,你所做的每个水龙头都会超出细胞(但在桌面视图内)会被你的 UITapGestureRecognizer
| 归档时间: |
|
| 查看次数: |
1091 次 |
| 最近记录: |