如何在swift的按钮动作中获取单元格按钮名称



我需要tableview单元格按钮名称在按钮动作

代码:请指引我

class NewSearchResultCell: UITableViewCell {
@IBOutlet weak var iButton: UIButton!
var actionBlock: (() -> Void)? = nil
}
class NewSearchViewController: UIViewController {
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "NewSearchResultCell", for: indexPath) as! NewSearchResultCell
cell.actionBlock = {
cell.iButton.displayTooltip("Job should be completed within these dates!")
}
return cell
}
@IBAction func cellBtn(_ sender: UIButton) {
actionBlock?()
}
}

错误:

在作用域中找不到'actionBlock'

cellBtn动作必须在UITableViewCell子类中,您可以将闭包中的任何内容传递给调用者。

将引用传递给单元格,因为如果插入或删除单元格,它可能会发生变化

class NewSearchResultCell: UITableViewCell {
@IBOutlet weak var iButton: UIButton!
var actionBlock: ((NewSearchResultCell) -> Void)?
@IBAction func cellBtn(_ sender: UIButton) {
actionBlock?(self)
}
}

在控制器句柄中传入单元格

cell.actionBlock = { actualCell in
actualCell.iButton.displayTooltip("Job should be completed within these dates!")
}

相关内容

  • 没有找到相关文章

最新更新