#import <UIKit/UIKit.h> @protocol TableCellDelegate <NSObject> - (void)choseTerm:(UIButton *)button; @end @interface TableViewCell : UITableViewCell @property (weak, nonatomic) IBOutlet UIButton *checkButton; @property (weak, nonatomic) IBOutlet UIButton *checkButton2; @property (weak, nonatomic) IBOutlet UILabel *label; @property (assign, nonatomic) BOOL isChecked; @property (assign, nonatomic) id<TableCellDelegate> delegate; - (IBAction)checkAction:(UIButton *)sender; - (IBAction)checkAction2:(UIButton *)sender;
.m文件
#import "TableViewCell.h"
@implementation TableViewCell
- (void)awakeFromNib {
// Initialization code
}
- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
[super setSelected:selected animated:animated];
// Configure the view for the selected state
}
- (IBAction)checkAction:(UIButton *)sender {
if ([_delegate respondsToSelector:@selector(choseTerm:)]) {
sender.tag = self.checkButton.tag;
NSLog(@"tag:%ld",self.checkButton.tag);
[_delegate choseTerm:sender];
}
}
- (IBAction)checkAction2:(UIButton *)sender {
if ([_delegate respondsToSelector:@selector(choseTerm:)]) {
sender.tag = self.checkButton2.tag;
NSLog(@"tag2:%ld",self.checkButton2.tag);
[_delegate choseTerm:sender];
}
}
@end
viewcontroller.m
#import "ViewController.h"
#import "TableViewCell.h"
@interface ViewController ()<UITableViewDelegate, UITableViewDelegate, TableCellDelegate>
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return 5;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *cellIdentifier = @"Cell";
static BOOL nibsRegistered = NO;
if (!nibsRegistered) {
UINib *nib = [UINib nibWithNibName:@"TableViewCell" bundle:nil];
[tableView registerNib:nib forCellReuseIdentifier:cellIdentifier];
nibsRegistered = YES;
}
TableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
cell.delegate = self;
cell.checkButton.tag = indexPath.row*1000+1;
cell.checkButton2.tag = indexPath.row*1000+2;
NSLog(@"checkButton.tag:%ld;checkButton2.tag=%ld",cell.checkButton.tag,cell.checkButton2.tag);
cell.label.text = [NSString stringWithFormat:@"%ld",(long)indexPath.row];
return cell;
}
- (void)choseTerm:(UIButton *)button
{
_clickIndex = button.tag;
if (_clickIndex%1000 == 1) {
NSLog(@"第一列!");
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"确定修改学期吗?" message:nil delegate:self cancelButtonTitle:@"取消" otherButtonTitles:@"确定", nil,nil];
[alertView show];
}else {
NSLog(@"第二列!");
}
}
@end