if([segue.identifier isEqualToString:@"Edit"]){

    AddCoffeeViewController *avc = [segue destinationViewController];

    Coffee *coffeeObj = [appDelegate.coffeeArray objectAtIndex:arow];
    NSLog(@"ViewController.m prepareForSegue: arow: %d coffeeName:%@ price:%@      coffeeID:%d",arow,coffeeObj.coffeeName,coffeeObj.price,coffeeObj.coffeeID);
    [coffeeObj setIsInEditMode:YES];
    avc.EditCoffeeObj = coffeeObj;


}

当我按附件按钮时,我没有得到正确的行。

虽然在下面的方法中,我得到正确的行。
如果我不想使用任何ivar,有什么方法可以让我为正确的行准备正确的行。
-(void)tableView:(UITableView *)tableView accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath{

arow = indexPath.row;

}


tableViewCell附件按钮:执行模态搜索(编辑)

+按钮(导航栏按钮项目):执行模态搜索(添加)

最佳答案

如果您已在 Storyboard 中添加了辅助 Action ,则sender中的prepareForSegue:sender:将是被点击的单元格。这意味着您可以做类似的事情

NSIndexPath *indexPath = [self.tableView indexPathForCell:sender];

10-08 14:12