我有一个自定义的UITableViewDelegate,如下所示
class CusinePreferencesTableView: NSObject, UITableViewDelegate, UITableViewDataSource {
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier(CellIdentefiers.oneCusinePreferencesCell.rawValue, forIndexPath: indexPath) as! OneCusinePreferencesTableViewCell
//do bla bla bla with the cell
cell.leftButton.addTarget(self, action: "cusineClicked:", forControlEvents: .TouchDown)
cell.rightButton.addTarget(self, action: "cusineClicked:", forControlEvents: .TouchDown)
cell.setNeedsDisplay()
return cell
}
我的手机有两个按钮,如您所见,我为他们设置了动作。
我获得了unrecognized selector sent to instance 0x7fa660ecbfa0
我试着把
func buttonClicked(sender: PreferenceButton){
// do bla bla bla
}
在CusinePreferencesTableView
和UIViewController里面,它有一个UITableView的出口,并且使用CusinePreferencesTableView作为它的委托,但我保留了它的异常
请帮助
答案 0 :(得分:3)
在CusinePreferencesTableView
添加按钮的操作
func cusineClicked(sender: PreferenceButton){
print("action triggered")
}
将目标添加到按钮时设置的操作名称与您在类中实际实现的操作(不同名称)不同。