1.默认样式为左滑出现删除按钮,需要实现以下两个方法:
- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
{
return UITableViewCellEditingStyleDelete; // 要实现左滑删除的那一行的编辑风格必须是Delete风格
}
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
// 点击删除按钮调用的方法
}
2.实现tableview代理方法 :
- (NSArray *)tableView:(UITableView *)tableView editActionsForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewRowAction *toTop = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleDestructive title:@"置顶" handler:^(UITableViewRowAction *action, NSIndexPath *indexPath) {
NSLog(@"置顶");
[tableView setEditing:NO animated:YES];
}];
toTop.backgroundColor =[UIColor redColor];
}
在上面这个方法中使用UITableViewRowAction类的
+ (instancetype)rowActionWithStyle:(UITableViewRowActionStyle)style title:(NSString *)title handler:(void (^)(UITableViewRowAction *action, NSIndexPath *indexPath))handler;
方法创建多个左滑按钮。默认字体为白色,所以需要设定背景颜色。且每个rowActionWithStyle后由一个Block用来执行点击该按钮后的操作