我将一个UITabGestureRecognizer附加到我的表视图中,以便检测特定位置上的选项卡。
- (void)cellTapped:(UITapGestureRecognizer *)gesture
{
CGPoint tapLocation = [gesture locationInView:self.tableView];
if(tapLocation.x > 95)
{
NSIndexPath *swipedIndexPath = [self.tableView indexPathForRowAtPoint:tapLocation];
ItemCell *cell = (ItemCell *)[self.tableView cellForRowAtIndexPath:swipedIndexPath];
[cell toggleCell:YES fromTap:YES];
}}
这里我检查了标签的x位置,只有当这个位置大于95时,才应该执行toggleCell函数,否则应该取消手势。
虽然这很好用,但单元格中的按钮确实很难单击。这些按钮位于95 x点的左侧。(这就是我检查位置的原因)
似乎我必须按住按钮一秒钟才能真正点击它们,这与点击手势有关吗?(当我移除它时,一切正常)
所以这里的绿色区域是可点击的。

发布于 2012-05-22 15:38:22
解决方案是将手势单独附加在单元本身中,并侦听不同的通知。
https://stackoverflow.com/questions/10695260
复制相似问题