如何在UITableViewcell上实现UISwipeGestureRecognizer?

时间:2011-09-14 13:07:34

标签: iphone swipe uiswipegesturerecognizer

如何在表格视图单元格中添加滑动手势?我在tableview中使用自定义单元格,我必须从表格中删除该行,所以请指导我如何在表格视图中使用此滑动手势?

2 个答案:

答案 0 :(得分:1)

绝对与其他任何视图相同。将此代码插入自定义单元格的init或UITableViewDataSource委托的cellForRowAtIndexPath方法中。

UISwipeGestureRecognizer *recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:myTableViewController action:@selector(removeCell:)];
recognizer.direction = UISwipeGestureRecognizerDirectionLeft;
recognizer.numberOfTouchesRequired = 1;
[self addGestureRecognizer:recognizer];
[recognizer release];

答案 1 :(得分:0)

您必须实现两个委托方法。

- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath {
     return YES;
}

以及您必须执行编辑或删除代码的其他方法。

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
    if (editingStyle == UITableViewCellEditingStyleDelete)  {
        //write delete code.
        [arry removeObjectAtIndex:indexPath.row];

        [Table reloadData];
    }
}