委托方法未从TableViewCell调用

时间:2017-11-15 11:14:19

标签: ios swift uitableview

这是我第一次在swift中使用delegate。我有一个固定三行数的表格视图,每行对单元格都有一个单独的.xib

我根据我在单元格中获得的数据调整每个单元格的高度。因此,之前加载了tableView并且之后加载了单元格,因此我在protocol类中定义了UITableViewCell

以上CalenderTimeTableViewCell课程I' ve:

protocol ReloadingTable {
    func updateTableView()
}

awakeFromNib()上面的这个课程中,我是var myDelegate: ReloadingTable?,在我获取数据的方法中(使用Alamofire),我正在呼叫self.myDelegate?.updateTableView()

在我viewController tableView中我首先扩展了课程ReloadingTable,并在本课程中提到了我

func updateTableView() {
        tableView.reloadData()
    }

通过应用断点,代码确实转到self.myDelegate?.updateTableView(),但未调用viewController updateTableView方法。

1 个答案:

答案 0 :(得分:0)

@vadian已评论过您应该将目标类分配给myDelegate

cellForRowAt函数中的

将目标类分配给我的委托

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: "Cell") as! CalenderTimeTableViewCell
    cell.myDelegate = self
    //Other
  }