我正在编写一个带有tab视图中的表视图的iOS应用程序。在我的UITableViewController中,我实现了-tableView:didSelectRowAtIndexPath:,但当我在运行时选择一行时,该方法没有被调用。表格视图正在被填充,所以我知道控制器中的其他tableView方法正在被调用。

有没有人知道我到底搞砸了什么才让这一切发生的?


当前回答

您必须选择这些选项

但是如果你想让uitableview在点击时不突出显示,那么你应该改变UITableViewCell属性。

选择“选择”的“无”选项,如下所示

其他回答

我知道是旧的,问题已经解决了,但有类似的问题,我认为问题是与我的自定义UITableViewCell,但解决方案是完全不同的-我重新启动XCode:),然后工作正常!就像Windows一样:)

如果你看了这个,那么问题还是没有解决。

我有自定义单元格,其中复选框“用户交互启用”是禁用的。所以,我只要打开它。祝你好运。

我有个电话要打。userInteractionEnabled隐藏在一些定制表代码中。

大多数虫子都很蠢,不是吗?

另一件可能导致问题的事情是不被选择的选择类型:

正常选择应为单选择,不应为无选择。

要以编程方式做到这一点,请执行:

tableView.allowsSelection = YES

确保你实现了tableView:didSelectRowAtIndexPath而不是tableView:didDeSelectRowAtIndexPath

这让我在很多场合!!