我正在使用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;
}
}
现在,当我在单元格上滑动时,或者当我点击编辑按钮时,标签栏会被隐藏,之后会恢复正常。我想在我点击编辑按钮时隐藏它。
我应该在哪里以及如何做到这一点?
感谢。
答案 0 :(得分: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;
}
}