如何检测删除buttonUItableviewcell是否隐藏?

我有一个包含UITableView的视图。 我可以在用户滑动时显示单元格上的删除button。

如果用户触摸删除button,一个方法将被触发(这工作正常)。 但是,如果用户决定不删除该单元格,并且他触摸视图中的任何位置以隐藏删除button。

我如何检测?

当用户点击单元格中的删除标记之外时,程序应该接收对table view委托中的tableView:didEndEditingRowAtIndexPath:的调用。

[UITableViewCell showingDeleteConfirmation]

要么

UITableViewCellStateShowingDeleteConfirmationMask作为参数的[UITableViewCell willTransitionToState:]

在你的UITableViewCell子类中实现willTransitionToState:方法。 当单元格正在转换到编辑状态或从编辑状态转换时,此方法由UITableView调用。

在你的类的实现中,你将需要有条件地检查传递给方法的掩码参数的值,以确定单元正在转换到哪个状态。 掩码的可能值是…

 enum { UITableViewCellStateDefaultMask = 0, UITableViewCellStateShowingEditControlMask = 1 << 0, UITableViewCellStateShowingDeleteConfirmationMask = 1 << 1 }; 

在你的情况下,你会想看转换到UITableViewCellStateDefaultMask,所以你的实现将如下…

 - (void)willTransitionToState:(UITableViewCellStateMask)state { if (state == UITableViewCellStateDefaultMask) { // User has switched back to default state... // ... } }