有没有办法,我们可以知道UITableViewCell上的删除按钮是在iOS 6中点击的。在iOS 7中,showsDeleteConfirmation属性设置为NO但在iOS 6中它保持为YES。
我想区分何时点击红色按钮以及点击删除按钮。这在iOS 7中运行良好,但在iOS 6中运行不正确。
答案 0 :(得分:1)
在视图控制器上添加委托回调:
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
if (editingStyle == UITableViewCellEditingStyleDelete) {
//Tap delete here
}
}
答案 1 :(得分:0)
试试这个......
1.首先在标题文件中添加UITableViewDataSource
,UITableViewDelegate
..
2.添加此代码以检查删除确认
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
if(editingStyle == UITableViewCellEditingStyleDelete)
{
NSLog(@"Delete Success");
}
else
{
NSLog(@"Delete Canceled");
}
}
答案 2 :(得分:0)
我不知道您是否仍然需要此功能,但如果我理解正确,您可以继承UITableViewCell
并使用-(void)willTransitionToState:(UITableViewCellStateMask)state
检查UITableViewCellStateMask
UITableViewCellStateShowingDeleteConfirmationMask
-(void)willTransitionToState:(UITableViewCellStateMask)state
{
if ( (state & UITableViewCellStateShowingDeleteConfirmationMask) == UITableViewCellStateShowingDeleteConfirmationMask )
{
// showing delete confirmation
}
}