在表格视图单元格中滑动后显示多个数据

Posted

技术标签:

【中文标题】在表格视图单元格中滑动后显示多个数据【英文标题】:Show multiple data, after swipe in tableview cell 【发布时间】:2018-11-21 09:41:41 【问题描述】:

我有一个包含一些数据的表格视图。在左侧滑动单元格时,我想要“删除”和“编辑”。我使用下面的代码得到了“删除”。请帮我解决这个问题..

- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath 
    if (indexPath.section == 0) 
        return NO;

    
    return YES;


  - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath 
    if (editingStyle == UITableViewCellEditingStyleDelete) 
        [self.circleGroupArray removeObjectAtIndex:indexPath.row];

        [_myCircleTableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
    

【问题讨论】:

使用默认方法,它不会可用,您可以使用类似的库:github.com/MortimerGoro/MGSwipeTableCell Custom edit view in UITableViewCell while swipe left. Objective-C or Swift的可能重复 【参考方案1】:

在你的类中使用这个方法,如果你想要更多的动作,你可以创建更多的 UITableViewRowActions 并将它们添加到数组中。

 -(NSArray *)tableView:(UITableView *)tableView editActionsForRowAtIndexPath:(NSIndexPath *)indexPath 

   UITableViewRowAction *editAction = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleNormal title:@"Clona" handler:^(UITableViewRowAction *action, NSIndexPath *indexPath)
      //add edit action here
   ];
   editAction.backgroundColor = [UIColor blueColor];

   UITableViewRowAction *deleteAction = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleNormal title:@"Delete"  handler:^(UITableViewRowAction *action, NSIndexPath *indexPath)
      //add delete action here
   ];
   deleteAction.backgroundColor = [UIColor redColor];
   return @[deleteAction,editAction];

【讨论】:

以上是关于在表格视图单元格中滑动后显示多个数据的主要内容,如果未能解决你的问题,请参考以下文章

更新表格视图单元格中的核心数据值后如何刷新

自定义表格视图单元格上的多个图像(Swift)

将 json 数据存储在表格视图的交替单元格中

如何在表格视图的单元格中使用夏季元素作为标签?

表格视图不显示单元格中的内容

图像在表格视图单元格中下载后调整大小