我们只需要实现tableView的代理方法
//侧滑允许编辑cell
- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath{
return YES;
}
- (NSArray *)tableView:(UITableView *)tableView editActionsForRowAtIndexPath:(NSIndexPath *)indexPath
{
// 添加一个删除按钮
UITableViewRowAction *deleteRowAction = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleDestructive title:@"删除"handler:^(UITableViewRowAction *action, NSIndexPath *indexPath) {
//在这里添加点击事件
}];
// 添加一个编辑按钮
UITableViewRowAction *topRowAction = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleDefault title:@"编辑"handler:^(UITableViewRowAction *action, NSIndexPath *indexPath) {
//
}];
topRowAction.backgroundColor = UIColorHex(0x54a9dd);
// 将设置好的按钮放到数组中返回
return @[deleteRowAction, topRowAction];
}
在开发过程中发现iOS11 之前点击侧滑事件跳转下一级页面后再返回列表会记住当前编辑的状态,而在iOS11后列表则不会记录相应的编辑状态,如果需要实现记录编辑状态就需要对iOS11之后的系统进行适配
网友评论