我有一个自定义的TableView Cell,我在tableView中使用 - 我已经决定我需要将它的一些方法委托给tableViewController。
//Custom tableview cell
typedef enum {
kButtonSelected,
kButtonNormal
} ButtonState;
// Classes using this custom cell must implement these methods
@protocol CustomTableViewCellDelegate <NSObject>
@required
- (void) storeButtonState:(ButtonState)state forButton:(UIButton *)sender;
- (void) restoreButtonState:(UIButton *)tagLectureButton;
@end
@interface CustomTableViewCell : UITableViewCell
// Delegate
@property (assign) id <CustomTableViewCellDelegate> delegate;
@property (weak, nonatomic) IBOutlet UILabel *mainLabel;
@property (weak, nonatomic) IBOutlet UILabel *numberLabel;
@property (weak, nonatomic) IBOutlet UIActivityIndicatorView *spinner;
@property (weak, nonatomic) IBOutlet UIButton *tagLectureButton;
然后我将TableView设置为其委托并实现方法。到目前为止一切顺利
@interface LecturesSubTVC : LecturesTVC <CustomTableViewCellDelegate>
但我没有设置(self.CustomTableViewCell.delegate = self;)
所有单元格都在以下方法中分配:
CustomTableViewCell *cell = (CustomTableViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
如何将单元格设置为委托,以便调用委托方法?
答案 0 :(得分:2)
你似乎已经掌握了一切。在
中出列一个单元格后CustomTableViewCell *cell = (CustomTableViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
只需使用cell.delegate = self;
答案 1 :(得分:1)
CustomTableViewCell *cell = (CustomTableViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
cell.delegate = self;