Ios UITapgestureRecognitor取消UITableViewController中的DidSelectRowatineXpath

Ios UITapgestureRecognitor取消UITableViewController中的DidSelectRowatineXpath,ios,cocoa-touch,Ios,Cocoa Touch,我对UITableViewCell进行了子类化,并在类中添加了一个UITapGestureRecognizer(它触发一个名为animateCell的方法)到contentView 我想做的是:当用户点击一个单元格时,会调用animateCell,但我也想调用didSelectRowAtIndexPath,这样我就可以将所选对象从表的源数组添加到另一个数组中 我注意到,使用uitappesturerecognizer会取消didSelectRowAtIndexPath。有什么方法可以同时使用这两

我对
UITableViewCell
进行了子类化,并在类中添加了一个
UITapGestureRecognizer
(它触发一个名为
animateCell
的方法)到
contentView

我想做的是:当用户点击一个单元格时,会调用
animateCell
,但我也想调用
didSelectRowAtIndexPath
,这样我就可以将所选对象从表的源数组添加到另一个数组中


我注意到,使用
uitappesturerecognizer
会取消
didSelectRowAtIndexPath
。有什么方法可以同时使用这两个属性吗?

这有点不太妥当,但是您可以尝试在
UITableViewCell
子类中创建一个属性,该属性将指针保留回您的
UITableViewController
。然后,通过手势识别器,您可以执行以下操作:

NSIndexPath *indexPath = [self.tableViewController.tableView indexPathForCell:self];
[self.tableViewController tableView:self.tableViewController.tableView didSelectRowAtIndexPath:indexPath];

为什么需要使用子类?为什么不能从
didselectRowatineXpath
为单元格设置动画?这更简单,因为我在堆栈(导航控制器)上添加了很多其他表视图控制器,每个控制器都需要能够执行相同的动画。我对这个还是比较陌生,所以如果你有建议,请说出来。这是个好主意。我已经试过了,但第二行出现错误
-didSelectRowAtIndexPath:notfound
此解决方案非常棒。只是一个问题:性能方面,哪一个更好?要实现上述解决方案,或者在
didSelectRowAtIndexPath
中执行动画(即使需要更多的工作)?我认为性能不应该有任何差异。两个都可以。