UITableViewCellEditingStyle同时插入和删除

时间:2011-05-24 04:50:21

标签: iphone uitableview coding-style edit

我正在研究为iPhone编程的书说我可以同时混合使用UITableViewCellEditingStyle-Insert / Delete。但是我无法弄清楚如何去做。有一个UITableViewdataSource方法的返回类型是UITableViewCellEditingStyle.But如果我只返回一个东西 - 插入或删除,如何同时返回两种样式。

2 个答案:

答案 0 :(得分:1)

如果我理解正确,您希望通过删除和添加新单元格(以及可选地设置更改动画)来更新您的tableview。您需要将您的调用嵌套在beginUpdates块中:

[tableView beginUpdates]
[tableView deleteRowsAtIndexPaths...
[tableView insertRowsAtIndexPaths...
[tableView commitUpdates]

您需要确保在调用commitUpdates:时UITableViewDataSourceDelegate方法反映出该更改。

答案 1 :(得分:1)

UITableViewCellEditingStyle是一个枚举,所以我不认为它可以同时插入和删除。以下是可能对您有帮助的答案:

-(UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
{
    if (indexPath.row == 0) {
        return UITableViewCellEditingStyleInsert;
    }
    else
    {
        return UITableViewCellEditingStyleDelete;
    }
}