重複の可能性:
ボタンをクリックして削除するスワイプのアクションを置き換えます
私は次のコードを持っています。
- (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.
}
}
このコードは、セルをスワイプすると実行されます。しかし、私が欲しいのは、カスタムテーブルビューセルのボタンを押すとこのコードが実行されることです。下のスクリーンショットでわかるように、テーブルビューに2つのボタンがあります。
ユーザーが「X」ボタンを押すと、セルをスワイプしたときのように削除ボタンが展開されます。セルに次のアクションをアタッチしています。
-(IBAction) deleteAppointment:(id) sender{
//show swipe delete button
}
そして、次の方法でそれを私のcellForRowAtIndexに添付しました。
cell.deleteAppointment.tag = indexPath.row;
[cell.deleteAppointment addTarget:self action:@selector(deleteAppointment:) forControlEvents:UIControlEventTouchUpInside];