3

我有一个表格视图,每个单元格上有一个标签和两个按钮。目前我有这个代码可以滑动删除。

- (void) tableView: (UITableView *) tableView commitEditingStyle: (UITableViewCellEditingStyle) editingStyle forRowAtIndexPath: (NSIndexPath *) indexPath {
    if (editingStyle == UITableViewCellEditingStyleDelete) {
        [appointments removeObjectAtIndex: indexPath.row];  // manipulate your data structure.
        [tableView deleteRowsAtIndexPaths: [NSArray arrayWithObject: indexPath]
                         withRowAnimation: UITableViewRowAnimationFade];
       NSLog(@"row deleted");  // Do whatever other UI updating you need to do.
    }
} 

当我滑动时,这段代码就会执行。但我希望它在按下按钮时执行。该按钮与以下 IBAction 链接。

- (IBAction)deleteRow:(id)sender {
  //Delete row
}

要记住一件事。我希望删除按钮像滑动删除时一样滑动。

有谁能够帮我?

4

1 回答 1

2

如果您的按钮在单元格中,您可以将其 tag 属性设置为 indexPath.row 值,并通过为目标分配 deleteRow:(id)sender 方法 -(void)addTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents为了让按钮滑动,您可能需要实现 panGestureRecognizer。我可能错了,但这个想法应该是检测触摸位置并滑动按钮(在滑动时设置它的框架)。如果您打算通过滑动按钮进行删除,您可能需要禁用在表格上滑动删除。

于 2012-11-30T08:28:21.737 回答