【发布时间】:2019-12-17 18:35:24
【问题描述】:
tableView 中有几个部分。每个部分都有 9 行。我在 TableViewCell 中设置了一个按钮,该按钮仅在每个部分的第 8 行和第 9 行可见。而且两者的功能不同,一个是“删除”按钮,一个是“设为默认”按钮。那么如何区分同一个按钮呢?
我在 TableViewCell 类中创建了一个函数让我们说buttonTapped()。我正在使用一个自定义按钮,我在其中声明了一个变量“indexPath”,以便区分按钮。当我配置单元格时,我将 indexPath.row 分配给按钮的 indexPath。因此,对于“删除”按钮,indexPath 变为 7(第 8 行),而对于“设为默认”,则为 8(第 9 行)。然后我必须在buttonTapped() 中切换按钮的 indexPath 以实现我的目标,情况为 7 和 8。有没有办法使此代码通用,即在情况下不硬编码 7 和 8。
@IBAction func buttonTapped(_ sender: CustomButton) {
switch sender.indexPath {
//Case 7 is 8th row in Table View
case 7:
//some code
//Case 8 is 9th row in Table View
case 8:
//some code
default:
break
}
}
【问题讨论】: