在iOS 5中,如果我在UITableView上将allowsMultipleSelectionDuringEditing设置为YES,则滑动删除操作将不再起作用。内置的Mail应用程序在编辑模式下支持滑动删除和多项选择,我也想这样做。我该如何实现?

最佳答案

诀窍是在进入编辑模式时将allowsMultipleSelectionDuringEditing设置为YES,在退出编辑模式时将其设置回NO。这样,在编辑模式下滑动删除和多项选择都可以工作。

如果您已将UITableViewController子类化(可能已拥有),则只需执行以下操作:

- (void)setEditing:(BOOL)editing animated:(BOOL)animated
{
    // Set allowsMultipleSelectionDuringEditing to YES only while
    // editing. This gives us the golden combination of swipe-to-delete
    // while out of edit mode and multiple selections while in it.
    self.tableView.allowsMultipleSelectionDuringEditing = editing;

    [super setEditing:editing animated:animated];
}

10-08 14:41