1

我正在使用 UITableView,并希望同时支持 Apple 提供的标准编辑工具。到目前为止,我可以在单元格上滑动以显示“删除”按钮,然后点击右上角的“编辑”按钮进入多行编辑模式。这工作正常。

问题是,我希望我的 tableView 就像邮件应用程序一样,在使用滑动手势进入编辑模式时“除了显示删除按钮之外什么都不做”,在进入时“显示垃圾箱按钮(任何地方)”多行编辑模式。我无法弄清楚我如何知道我处于哪种编辑模式......

例如,我添加了setEditing隐藏标签栏的方法(只是为了检查我的表格的行为):

-(void)setEditing:(BOOL)editing animated:(BOOL)animated 
{

    self.tableView.allowsMultipleSelectionDuringEditing = editing;
    [super setEditing:editing animated:animated];

    if (editing) {

        self.tabBarController.tabBar.hidden = YES;

    } else {

        self.tabBarController.tabBar.hidden = NO;
    }

}

现在,当我在单元格上滑动时,或者当我点击编辑按钮时,标签栏被隐藏,之后又恢复正常。我只想在点击编辑按钮时隐藏它。

我应该在哪里以及如何做到这一点?

谢谢。

4

1 回答 1

0

为什么不把发件人交给编辑方法,像这样呢?

-(void)setEditing:(BOOL)editing animated:(BOOL)animated sender:(id)sender
{

    self.tableView.allowsMultipleSelectionDuringEditing = editing;
    [super setEditing:editing animated:animated];
    if (editing && [sender isKindOfClass:[UIButton class]]) 
    {
        self.tabBarController.tabBar.hidden = YES;
    } 
    else 
    {
        self.tabBarController.tabBar.hidden = NO;
    }

}
于 2012-08-23T08:52:46.447 回答