現在、2 つのアクセサリ ボタンを含むカスタム UITableViewCell を持つ UITableView があります。
ボタンの 1 つがタップされると、次のいずれかがトリガーされます。
(void) shareButtonTapped:(UIControl *)button withEvent:(UIEvent *) event
{
NSIndexPath * indexPath = [self.tableview indexPathForRowAtPoint:[[[event touchesForView: button] anyObject] locationInView: self.tableview]];
if ( indexPath == nil )
return;
[self.tableview.delegate tableView:self.tableview accessoryButtonTappedForRowWithIndexPath:indexPath];
}
また
(IBAction)callButtonTapped:(UIControl *)button withEvent:(UIEvent *)event {
NSIndexPath * indexPath = [self.tableview indexPathForRowAtPoint:[[[event touchesForView: button] anyObject] locationInView: self.tableview]];
if ( indexPath == nil )
return;
[self.tableview.delegate tableView:self.tableview accessoryButtonTappedForRowWithIndexPath:indexPath];
}
次に、次のメソッドを使用してタッチ イベントを処理します。
(void)tableView:(UITableView *)tableView accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath {
NSLog(@"Accessory tapped for row %d", indexPath.row);
}
私の質問:「accessoryButtonTappedForRowWithIndexPath」では、UITableViewCell で 2 つのボタンのどちらが押されたかをどのように把握できますか? それぞれのタッチを別々に処理したいと思います。