在ios中的Tableview中显示删除按钮

时间:2014-08-08 09:55:46

标签: ios objective-c uitableview

我在TableViewCell中添加了一个按钮作为子视图。按下此按钮时,我需要显示与我们滑动行时相同的删除按钮(右侧)。 我不想显示小删除按钮(左侧)。 当我们按下小删除按钮(左侧),大删除按钮显示(右侧)时,我需要实现相同的功能。

我的代码

-(IBAction)act_press
{
[tblArticles setEditing:YES animated:YES];
}

- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
{
    return UITableViewCellEditingStyleDelete;
}
- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath {
    return YES;
}
-(void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
    if (editingStyle == UITableViewCellEditingStyleDelete) {
        //do delete stuff
    }
}

我该怎么做?

1 个答案:

答案 0 :(得分:-1)

您需要为该indexPath设置UITableViewCell样式

- (void)willTransitionToState:(UITableViewCellStateMask)state{
    [super willTransitionToState:state];
    if ((state & UITableViewCellStateShowingDeleteConfirmationMask) == UITableViewCellStateShowingDeleteConfirmationMask) {
        for (UIView *subview in self.subviews) {
            if ([NSStringFromClass([subview class]) isEqualToString:@"UITableViewCellDeleteConfirmationControl"]) {
                   // remove or hide the left small view
            }
        }
    }
}