确定按下了哪个表格视图单元格按钮? [英] Identify in which table view Cell button was pressed?

查看:74
本文介绍了确定按下了哪个表格视图单元格按钮?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有像测验一样的表视图单元格。在每个单元格中我都有一个按钮如何识别按下哪个单元格按钮。也许通过IndexPath ???
这是我连接按钮的方式

I have table view cells like quiz. And in each cell I have a buttons And how can I identify in which cell button was pressed. Maybe by IndexPath??? This is how I connected button to

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: "QuestionCell")!
     variant1 = cell.contentView.viewWithTag(1) as! UIButton
     variant2 = cell.contentView.viewWithTag(2) as! UIButton
     variant3 = cell.contentView.viewWithTag(3) as! UIButton
     variant4 = cell.contentView.viewWithTag(4) as! UIButton

    variant1.addTarget(self, action: #selector(self.variant1ButtonPressed), for: .touchUpInside)
    variant2.addTarget(self, action: #selector(self.variant2ButtonPressed), for: .touchUpInside)
    variant3.addTarget(self, action: #selector(self.variant3ButtonPressed), for: .touchUpInside)
    variant4.addTarget(self, action: #selector(self.variant4ButtonPressed), for: .touchUpInside)

    return cell
}

func variant1ButtonPressed() {
    print("Variant1")
    variant1.backgroundColor = UIColor.green


}
func variant2ButtonPressed() {
    print("Variant2")
    variant2.backgroundColor = UIColor.green


}
func variant3ButtonPressed() {
    print("Variant3")
    variant3.backgroundColor = UIColor.green

}
func variant4ButtonPressed() {
    print("Variant4")
    variant4.backgroundColor = UIColor.green

}

这是故事板中的样子:

This is how it looks like in Storyboard:

推荐答案

使用此行获取indexPath,你必须在目标选择器上传递 UIButton

Use this line to get indexPath, Where you have to pass UIButton on target selector

func buttonTapped(_ sender:AnyObject) {
    let buttonPosition:CGPoint = sender.convert(CGPointZero, to:self.tableView)
    let indexPath = self.tableView.indexPathForRow(at: buttonPosition)
}

这篇关于确定按下了哪个表格视图单元格按钮?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆