我有一个带有标签的tableview和每个单元格上的两个按钮。目前我有这个代码可以滑动删除。
- (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
}
要记住一件事。我希望删除按钮像滑动删除时一样滑动。
有人能帮助我吗?
答案 0 :(得分:2)
如果您的按钮位于单元格中,则可以将其tag属性设置为indexPath.row值,并通过-(void)addTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents
为目标指定deleteRow:(id)sender方法。为了使按钮滑动,您可能需要实现panGestureRecognizer。我可能错了,但这个想法应该是检测触摸位置和滑动按钮(滑动时设置框架)。如果您打算通过滑动按钮删除,则可能需要禁用在桌面上滑动才能删除。