Ios 在UITableView';之前调用情节提要segue;迪德罗

Ios 在UITableView';之前调用情节提要segue;迪德罗,ios,storyboard,tableview,didselectrowatindexpath,Ios,Storyboard,Tableview,Didselectrowatindexpath,我有一个故事板,上面有一张桌子单元格里的segue。我想在选择行时使用一些数据设置一些属性,因此我执行以下操作: - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { [[ProperyManager sharedPropertyManager]setSelectedRow:[verseIds objectAtIndex:indexPath.row

我有一个故事板,上面有一张桌子单元格里的segue。我想在选择行时使用一些数据设置一些属性,因此我执行以下操作:

    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    [[ProperyManager sharedPropertyManager]setSelectedRow:[verseIds objectAtIndex:indexPath.row]];
    [[ProperyManager sharedPropertyManager]setID:[poemIDs objectAtIndex:indexPath.row]];
    [[ProperyManager sharedPropertyManager]setRowToReturn:[NSString stringWithFormat:@"%i",indexPath.row]];


}
问题是,目标视图控制器的视图控制器生命周期方法(VIEWWILLEXPEND等)在上面的didSelectRow方法之前被调用,因为segue在执行委托方法之前推送视图


我该如何解决这个问题?

不要创建从单元格到新VC的序列,而是设置从旧VC到新VC的序列,并给序列一个标识符

然后在

didSelectRowAtIndexPath
您可以调用


[self-performsguewithidentifier:@“Segue”sender:self]
Rawkode的答案是一个很好的解决方案-另一种选择是,在
prepareforsgue:
中,您可以访问表视图的选定行(发送方
参数将是表视图单元格,然后您可以执行
[self.tableView indexPathForCell:(UITableViewCell*)发件人]
获取索引路径)并在此时设置您需要的任何内容。

谢谢您的回答帮助我了解了其他内容并了解了更多内容:)