UITableViewCell右滑时自定义添加多个按钮

这是iOS8新增加的一个属性,用起来简直方便~

typedef NS_ENUM(NSInteger, UITableViewRowActionStyle) {
UITableViewRowActionStyleDefault = 0,
UITableViewRowActionStyleDestructive = UITableViewRowActionStyleDefault,
UITableViewRowActionStyleNormal
} NS_ENUM_AVAILABLE_IOS(8_0);


效果图大概就是这样:

![自定义置顶和收藏按钮](http://upload-images.jianshu.io/upload_images/444873-dc68e676bf98b900.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

具体使用起来也非常方便:

//设置可以编辑

  • (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath {
    return YES;
    }
    //设置编辑操作:删除

  • (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath {
    return UITableViewCellEditingStyleDelete;
    }
    //自定义按钮
    -(NSArray *)tableView:(UITableView *)tableView editActionsForRowAtIndexPath:(NSIndexPath *)indexPath {
    UITableViewRowAction *layTopRowAction1 = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleDestructive title:@"删除" handler:^(UITableViewRowAction *action, NSIndexPath *indexPath) {
    NSLog(@"点击了删除");
    [tableView setEditing:NO animated:YES];
    }];
    layTopRowAction1.backgroundColor = [UIColor redColor];

    UITableViewRowAction *layTopRowAction2 = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleDestructive title:@"置顶" handler:^(UITableViewRowAction *action, NSIndexPath *indexPath) {
    NSLog(@"点击了置顶");
    [tableView setEditing:NO animated:YES];
    }];
    layTopRowAction2.backgroundColor = [UIColor greenColor];

    UITableViewRowAction *layTopRowAction3 = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleDestructive title:@"更多" handler:^(UITableViewRowAction *action, NSIndexPath *indexPath) {
    NSLog(@"点击了更多");
    [tableView setEditing:NO animated:YES];

    }];
    layTopRowAction3.backgroundColor = [UIColor blueColor];

    NSArray *arr = @[layTopRowAction1,layTopRowAction2,layTopRowAction3];
    return arr;
    }


以上.OVER

你可能感兴趣的:(UITableViewCell右滑时自定义添加多个按钮)