2012-06-10 50 views
0

阅读BigNerdRanch的iOS指南,其中一项任务是在UITableView中的项目列表底部添加“No More Items”单元。所以,我将该项目添加到底部,但我想使它无法删除,并且无法对其重新排序。更改UITableView的编辑风格

我可以通过设置重排序:canMoveRowAtIndexSource为NO。但是,删除按钮仍然出现。我知道我可以拒绝我不想删除的行的删除确认,但我不想让删除按钮出现。

我知道我可以通过将canEditRowAtIndexPath设置为NO来摆脱删除按钮。但是,当我进入编辑模式时,这些行看起来很乱,因为它们不再缩进。

它看起来像我可以缩进一个单元格的内容,但不是单元格本身。是对的吗?

这个问题最好的解决办法是什么?即使是方法的名称也会非常有用。

+0

如果您居中底部单元格的文本,并使其看起来含有一些细胞在视觉上不同,它不会看起来不稳定。 – Greg

回答

1

我所做的是使用editingStyleForRowAtIndexPath,检查那里,如果电池是可删除的,就像这样:

- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    if(... can delete ...) 
    { 
     return UITableViewCellEditingStyleDelete; 
    } 

    return UITableViewCellEditingStyleNone; 
}