2015-12-22 90 views
0

我有一個自定義的UITableViewDelegate內,如下面的我應該在哪裏把動作的按鈕的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,並具有用於UITableView的電源插座中的UIViewController內,並使用CusinePreferencesTableView作爲其代表,但我保持與它的例外

請幫助

回答

3

CusinePreferencesTableView添加按鈕的操作

func cusineClicked(sender: PreferenceButton){ 
     print("action triggered") 
    } 

當目標被添加到該按鈕是從行動(不同的名字),你的不同實際上在類中實現所設的動作名稱。

+0

你的按鈕動作有'cusineClicked:'名字,但是你用'buttonClicked'名稱實現它,系統不會找到它,它會崩潰 – azimov

+1

對不起........... .................. – sarah

相關問題