Ios 在Swift的CellForRowatineXpath中编写闭包是否有效?

Ios 在Swift的CellForRowatineXpath中编写闭包是否有效?,ios,swift,Ios,Swift,例如,当事件从单元格触发时,我在单元格和单元格调用闭包中有两个操作。我写的代码如下。我的问题是闭包只创建一次,或者在CellForRowatineXpath方法调用时创建并分配新闭包 func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { let therapies = therapySections?[indexPath.section].th

例如,当事件从单元格触发时,我在单元格和单元格调用闭包中有两个操作。我写的代码如下。我的问题是闭包只创建一次,或者在CellForRowatineXpath方法调用时创建并分配新闭包

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let therapies = therapySections?[indexPath.section].therapies

    let cell = TableViewCell.cellFor(tableView, for: indexPath, with: therapies?[indexPath.row])

    cell.deleteRowCallBack = { [weak self] (selectedCell, synchronizedObjectId) in

        guard let strongSelf = self else {
            return
        }
    }

    cell.editRowCallBack = { [weak self] (selectedCell, synchronizedObjectId) in

        guard let strongSelf = self else {
                return
        }
    }
    return cell
}

或者我必须创建闭包变量,然后分配给相应的单元格闭包。

您可以将委托模式与协议一起使用。只是想澄清一下,这些回调是如何调用的?它们是否附加到表视图单元格中的操作,例如,单击一个按钮后,您称之为完成?如果是这样的话,那么使用委托肯定是更好的方法基本上是这样,但不清楚单元格中发生了什么。瓦迪安,艾伦在单元格中,当单击单元格中的按钮(如删除、编辑等)时,这些闭包调用。委托始终是更好的方法,我很困惑,要么为这些闭包分配直接闭包,要么为这些闭包创建全局变量,然后分配给单元格闭包变量。您可以在协议中使用委托模式。我只是想澄清一下,但这些回调是如何调用的?它们是否附加到表视图单元格中的操作,例如,单击一个按钮后,您称之为完成?如果是这样的话,那么使用委托肯定是更好的方法基本上是这样,但不清楚单元格中发生了什么。瓦迪安,艾伦在单元格中,当单击单元格中的按钮(如删除、编辑等)时,这些闭包调用。委托始终是更好的方法,我很困惑,要么分配直接闭包,要么为这些闭包创建全局变量,然后分配给单元格闭包变量。