gpt4 book ai didi

iphone - 在UITableViewCell中处理touchesBegan会禁用didSelectRowAtIndexPath

转载 作者:行者123 更新时间:2023-12-03 18:38:11 26 4
gpt4 key购买 nike

我正在自定义tableviewcell控件中实现滑动手势,因此我需要实现touchesBegan事件。我能够实现滑动,但不幸的是,因为touchesBegan是在自定义单元格中处理的,所以我没有在tablecontroller上收到didSelectRowAtIndexPath消息。如果 TouchBegan 方法被禁用,它就可以工作。

这应该如何处理?我希望触摸事件在处理 TouchBegan 后在响应者链中冒泡。我怎样才能做到这一点?

谢谢。

最佳答案

我确信您可以看到发生这种情况,因为您正在重写先前在父类(super class)上定义的方法。这样做意味着事件不会被调用。

您尝试过调用[super TouchsBegan]吗?这样所有上游的事情都可以处理。并且您可以覆盖滑动手势。

或者另一种选择是在您自己的触摸方法中检测到触摸时调用委托(delegate)。

类似于(您可能还会实现其他触摸事件)

-(void) touchesBegan
{
//logic to detect tap only.
[tablecell.delegate didSelectRowAtIndexPath:(some way to determin touched row)]
}

关于iphone - 在UITableViewCell中处理touchesBegan会禁用didSelectRowAtIndexPath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/932151/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com