Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/119.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Don';t在didSelectRowAt中运行委托方法_Ios_Swift_Uitableview - Fatal编程技术网

Ios Don';t在didSelectRowAt中运行委托方法

Ios Don';t在didSelectRowAt中运行委托方法,ios,swift,uitableview,Ios,Swift,Uitableview,HogeViewController.swift HogeTableViewCell.swift 不要运行此代码 这是不可能的吗?func tableView(didSelectRowAt)不是UITableViewDelegate方法的签名,因此它永远不会被调用。您的函数的签名需要 func tableView(tableView:UITableView,didSelectRowAt rowIndex:Int) 更好的是,与其让类扩展UIViewController并实现UITableView

HogeViewController.swift

HogeTableViewCell.swift

不要运行此代码

这是不可能的吗?

func tableView(didSelectRowAt)
不是
UITableViewDelegate
方法的签名,因此它永远不会被调用。您的函数的签名需要

func tableView(tableView:UITableView,didSelectRowAt rowIndex:Int)

更好的是,与其让类扩展
UIViewController
并实现
UITableView
数据源和委托,不如让类扩展
UITableViewController
,它已经实现了数据源和委托,并因此强制您使用
覆盖
修饰符,如

override func tableView(\utableview:UITableView,didSelectRowAt indexath:indexPath)
func tableView(didSelectRowAt)
不是
UITableViewDelegate
方法的签名,因此不会调用它。您的函数的签名需要

func tableView(tableView:UITableView,didSelectRowAt rowIndex:Int)

更好的是,与其让类扩展
UIViewController
并实现
UITableView
数据源和委托,不如让类扩展
UITableViewController
,它已经实现了数据源和委托,并因此强制您使用
覆盖
修饰符,如


重写func tableView(\utableview:UITableView,didSelectRowAt indexPath:indexPath)
由于单元格是可变的,它似乎是一个不能通过委托实现方法的规范。

由于单元格是可变的,它似乎是一个不能通过委托实现方法的规范

protocol HogeDelegate: class {
  func huga()
}
class HogeViewController: UIViewController,UITableViewDelegate, UITableViewDataSource{
  weak var delegate:
  func tableView(didSelectRowAt){
    self.delegate?.huga()
  }
}
class HogeTableViewCell: UITableViewCell, HogeDelegate{
  func huga(){
    print("huga")
  }
}