Iphone 加上「;轻扫以删除";但并非所有细胞都如此

Iphone 加上「;轻扫以删除";但并非所有细胞都如此,iphone,uitableview,swipe,Iphone,Uitableview,Swipe,我想在我的tableview中添加“滑动以删除”的可能性,但我不希望表的最后一个单元格出现这种情况 如果indexath.row是最后一行,我可以签入-(void)tableView:(UITableView*)tableView committeeditingstyle:(UITableView celleditingstyle)editingStyle for rowatindexpath:(nsindexath*)indexath,但我想要的是,如果用户在最后一个单元格上滑动,则不会显示任

我想在我的tableview中添加“滑动以删除”的可能性,但我不希望表的最后一个单元格出现这种情况

如果indexath.row是最后一行,我可以签入
-(void)tableView:(UITableView*)tableView committeeditingstyle:(UITableView celleditingstyle)editingStyle for rowatindexpath:(nsindexath*)indexath
,但我想要的是,如果用户在最后一个单元格上滑动,则不会显示任何内容(而在其他单元格中显示文本“delete”)

我试过这个

-(NSString *)tableView:(UITableView *)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:(NSIndexPath *)indexPath{
if (indexPath.row != ([array count]-1)) {
   return @"delete";
 }
 else {
     NSString *a;
     return a;
  }
}
但它当然不起作用(应用程序崩溃)。 我试过了

return @"";
但是红色按钮出现(没有文本)

你有什么建议吗? 谢谢

试试看

- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
{
    if ([indexPath row] == [tableView numberOfRowsInSection:[indexPath section]] - 1)
    {
        return UITableViewCellEditingStyleNone;
    }

    return UITableViewCellEditingStyleDelete;
}
试一试


由于返回未初始化的指针,应用程序崩溃。但即便如此,你还是做错了;-)


您希望为所有单元格(最后一个单元格除外)实现并返回
UITableViewCellEditingStyleDelete
。您需要为最后一个单元格返回
UITableViewCellEditingStyleNone
,以防止其被删除。

由于返回未初始化的指针,应用程序崩溃。但即便如此,你还是做错了;-)


您希望为所有单元格(最后一个单元格除外)实现并返回
UITableViewCellEditingStyleDelete
。您需要为最后一个单元格返回
UITableViewCellEditingStyleNone
,以防止其被删除。

在您的
中,是否尝试返回
nil
?现在,您正在返回一个未初始化的指针,这可能会导致您的崩溃。使用nil,应用程序不会崩溃,但结果与
中的结果相同(显示为“delete”)。您是否尝试返回
nil
?现在,您正在返回一个未初始化的指针,这可能会导致您的崩溃。使用nil时,应用程序不会崩溃,但结果是相同的(显示为“delete”)Close,但丢失了:您引用的方法有一个
void
返回类型,但您尝试返回一个值。您的意思可能是
tableView:editingStyleForRowAtIndexPath:
。关闭,但错过了:您引用的方法具有
void
返回类型,但您尝试返回一个值。您的意思可能是
tableView:editingStyleForRowAtIndexPath: