以编程方式在 Table 行点击上推送 VC

Programmatically Push VC on Table Row Tap

我正在尝试执行一个 onRowTap 方法而不使用故事板 segue 来推送到新的视图控制器,但是当点击它时它只显示来自 indexPath 第一项的信息,无论点击哪一行.这是我的代码:

- (void)tableView:(UITableView *)theTableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    [self.tableView deselectRowAtIndexPath:[self.tableView indexPathForSelectedRow] animated:YES];
    NSInteger row = [[self tableView].indexPathForSelectedRow row];
    NSDictionary *insta = [self.instaPics objectAtIndex:row];
    UIStoryboard*  sb = [UIStoryboard storyboardWithName:@"Main"
                                                  bundle:nil];
    InstaPicDetailViewController* vc = [sb instantiateViewControllerWithIdentifier:@"InstagramDetail"];
    vc.detailItem = insta;
    [self.navigationController pushViewController:vc animated:YES];
}

将 deslectRowAtIndexPath 消息调用移到行变量的赋值下方:

NSInteger row = [[self tableView].indexPathForSelectedRow row];
[self.tableView deselectRowAtIndexPath:[self.tableView indexPathForSelectedRow] animated:YES];