我可以同时使用UITableViewCellEditingStyleInsert和UITableViewCellEditingStyleDelete两个按钮吗?

时间:2015-06-21 03:50:09

标签: ios uitableview

我返回canEditRowAtIndexPathYES。如果我向左滑动,我可以看到删除按钮并执行我的删除操作。如果向左滑动,如何同时显示插入按钮和删除按钮,该怎么办?

我知道有一种方法,我应该有一个带有两个按钮的自定义单元格,只需添加一个panGesture来识别滑动动作。但我想用Apple为我们提供这么简单的工作。当我向左滑动单元格时,可以一起看到插入和删除按钮吗?我为我糟糕的表情道歉。

-(BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
{
    return YES;
}

-(void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{

    if(editingStyle==UITableViewCellEditingStyleInsert)
    {
        NSLog(@"click insert");//I only have delete button, I also want to have insert button .
    }
    if(editingStyle==UITableViewCellEditingStyleDelete)
    {
        NSLog(@"click delete");
   }
}

我知道tableView:editActionsForRowAtIndexPath可以完成这项工作......但它是为IOS8.0及更高版本提供的,如何为IOS7做什么

1 个答案:

答案 0 :(得分:0)

至少从iOS 8开始,这是无法完成的(我不知道这是否在iOS 9中发生了变化)。单元格只能具有3种可能的编辑样式之一 - “无”,“插入”或“删除”。 UITableViewCell同时不支持“插入”和“删除”。当表处于编辑模式时,单元格将根据行的单一编辑样式显示无按钮,左侧的插入图标或左侧的删除图标。

在同一行上插入和删除实际上没有任何意义。这对用户意味着什么?通常,表视图只有一行(每个部分)可能具有插入编辑样式。点击时,该行允许用户向表视图添加新行。其他现有行可能具有删除编辑样式,以允许用户删除该特定行。

再说一遍,单行同时具有插入和删除编辑样式意味着什么?