1

これが私のコードです:

- (void)tableView:(UITableView *)tableView accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath
{
    [self performSegueWithIdentifier:@"editInfo" sender:nil];
}

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([[segue identifier] isEqualToString:@"editInfo"]) {
        EditInfoViewController *vc = [segue destinationViewController];
        NSInteger selectedIndex = [[self.tableView indexPathForSelectedRow] row];
        NSLog(@"%d",selectedIndex);
        [vc setSelectedIndex:selectedIndex];
    }
    else if ([[segue identifier] isEqualToString:@"sendMessage"]) {
                 ...
    }
}

selectedIndex変数は常にNSLoggedとして0です...何か提案はありますか?ありがとう。

4

1 に答える 1

4

UITableViewCell の accessoriesButton をタップしても、accessoryButton を含む行は選択されません。

を呼び出すと、としてperformSegueWithIdentifier渡すことができ、それを で参照できます。indexPathsenderprepareForSegue

于 2012-12-24T03:13:49.230 に答える