我的 didSelectRowAtIndexPath 没有被调用

Posted

技术标签:

【中文标题】我的 didSelectRowAtIndexPath 没有被调用【英文标题】:My didSelectRowAtIndexPath not called 【发布时间】:2018-04-28 11:41:27 【问题描述】:

didSelectRowAtIndexPath 未调用。我尝试了所有通过堆栈溢出发布的解决方案。

func tableView(_tableView: UITableView, didSelectRowAt indexPath: IndexPath) 

【问题讨论】:

怎么会有人能够帮助这些小信息?请编辑您的帖子以包含更多背景信息以及您迄今为止所做的尝试。 @LinusGeffarth 只有这一种方法有问题。 numberOfRowsInSection,cellForRowAt 工作正常 您是否已将代理连接到您当前的班级 class LocationViewController: UIViewController,UITextFieldDelegate,UITableViewDelegate,UITableViewDataSource,UIPickerViewDelegate,UIPickerViewDataSource,IndicatorInfoProvider,UITabBarControllerDelegate self.tableMain.delegate = self.tableMain.dataSource = self 如果您没有正确答案,请停止投票。 【参考方案1】:

交叉验证以下内容会阻止 didSelectMethod 工作:

    userInteraction 是否没有为 tableView 禁用

    没有对主要的UIView 进行任何点击手势,例如,例如

        // Tap Gesture
        let tapGesture = UITapGestureRecognizer(target: self, action: #selector(HomeVC.tapBlurButton(_:)))
        self.view.addGestureRecognizer(tapGesture)
    

并像使用它

 @objc func tapBlurButton(_ sender: UITapGestureRecognizer) 
        tblZoneType.reloadData()
    

这将阻止与tableView 的交互(个人遇到了这个问题,我的 didSelect 没有被调用)我删除了点击手势的代码并且它起作用了

    已正确给出dataSourcedelegates。 没有任何视图覆盖tableView

希望这会有所帮助。

【讨论】:

谢谢兄弟.. self.view.addGestureRecognizer(tapGesture) 这是问题所在。 有些人需要向你学习。在没有知识的情况下投票否决这个问题。 @RajkumarKumawat 如果它对你有用。保持通过绿色勾号批准它的习惯。【参考方案2】:

检查您的委托方法是否实际被调用,您可能没有将 VC 连接为委托/数据源

【讨论】:

Sam 我不明白你想说什么。在另一个控制器中它工作正常。【参考方案3】:

您可能在该单元格中有 按钮,并且您可能正在尝试点击该按钮(或) 检查情节提要,是否启用了 tableView 用户交互

【讨论】:

是的,用户交互已启用且单元格仅包含标签。 tableview 单元格和 tableview 的高度是多少?

以上是关于我的 didSelectRowAtIndexPath 没有被调用的主要内容,如果未能解决你的问题,请参考以下文章

20155204 信息安全系统设计 第十周 课上测试补交

为啥我的 ListView 使我的应用程序崩溃而不是列出我的条目?

我的 tensorflow 没有检测到我的 gpu 并使用我的 cpu(机器学习)

我的累积快照设计是不是适合我的 DW 和我的需要

2016我的时间我的生存

为啥我的 php 没有将我的联系表单输入发送到我的电子邮件?