TabelView的多选模式

@interface ViewController ()<UITableViewDelegate,UITableViewDataSource>

@property(nonatomic,strong) NSMutableArray *dataSourceArray;

@end

@implementation ViewController

- (void)viewDidLoad {

    [super viewDidLoad];

    self.dataSourceArray  = [NSMutableArray arrayWithObjects:@"A", @"B", @"C", @"D", @"E", @"F", @"G", @"H", @"I", @"J", @"K", @"L", @"M", nil];

    UITableView *tableView = [[UITableView alloc]initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height) style:UITableViewStylePlain];

    tableView.delegate=  self;

    tableView.dataSource = self;

    //打开编辑状态

    [tableView setEditing:YES animated:YES];

    [self.view addSubview:tableView];

}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section

{

    return self.dataSourceArray.count;

}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

{

    static NSString *cellIdentifier = @"Cell";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];

    if (!cell)

    {

        cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:cellIdentifier];

        

    }

    cell.textLabel.text = self.dataSourceArray[indexPath.row];

    

    return cell;

}

//这两个参数 一个一个写就是各自的状态,两个一起写 就成了前面的有圆圈的多选状态

- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath

{

    return UITableViewCellEditingStyleDelete | UITableViewCellEditingStyleInsert;

}

//点击cell选择  往你数据源数组里面加东西

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {

}

//这个是取消点击的cell 删除你数据源的东西

- (void)tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath{

}

//根据上面的两个方法 删除你的cell和你的数据源的东西 记得刷新表

 实现的效果

原文地址:https://www.cnblogs.com/yuejunjie/p/5147279.html