我使用此代码来检测长按的元素:
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
// some stuff
if let labelCell = model as? TTTLabelCell{
labelCell.delegate = self
labelCell.textLabel.addGestureRecognizer(longPressRec)
}
}
这是手势识别器
longPressRec.addTarget(self, action:#selector(labelLongPressed))
这是选择器
func labelLongPressed(){
print("Label Long pressed")
// labelCell.backgroundColor = UIColor.blue
}
正如代码中所注释的那样,我想要实现的是将选定的对象(labelCell)传递给选择器 labelLongPressed(),这将允许我更改一些属性。您知道如何做到这一点吗?
最佳答案
更改功能如下:
func labelLongPressed(_ sender: UITapGestureRecognizer){
print("Label Long pressed")
let labelCell: TTTLabelCell = sender.view // track as per your view hierarchy
labelCell.backgroundColor = UIColor.blue
}
关于ios - 将对象传递给选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43494205/