Xcode 8/Swift 3:didSelectRowAt vs didSelectRowAtIndexPath

Cos*_*min 3 uitableview ios swift3 xcode8

我们的Swift 3迁移之后会发生一些非常奇怪的事情.我们有两个视图控制器,它们都实现,UITableViewDelegate并且它们都实现public func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath)

但是只在其中一个中调用实际方法.

如果我在一个不工作改变public func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath)public func tableView(_ tableView: UITableView, didSelectRowAtIndexPath: IndexPath)(注意雨燕2.2的签名),那么他们都工作.

两个视图控制器都是Swift类,所以我不确定到底发生了什么.我很确定它可能是一个Objective-C vs Swift互操作性问题,但我们的整个项目是用Swift编写的,所以这就是为什么很难弄清楚导致这个问题的原因.

任何帮助表示赞赏.谢谢.

Aks*_*Aks 8

对于Swift 3.0,请使用

override  func tableView(_ tableView: UITableView, didSelectRowAt
 indexPath: IndexPath){

  //your code...  


 }
Run Code Online (Sandbox Code Playgroud)