Objective c 如何访问animateTransition:transitionContext中的UITableView单元格帧

Objective c 如何访问animateTransition:transitionContext中的UITableView单元格帧,objective-c,uitableview,cocoa-touch,ios8,custom-transition,Objective C,Uitableview,Cocoa Touch,Ios8,Custom Transition,我正在尝试进行一个模式自定义转换,其中需要将框架作为我要转换到的视图控制器中tableview的第一个单元格。 当我在以下代码之后的animateTransition:transitionContext中放置断点时: NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSection:0]; UITableViewCell *cell = [toViewController.tableView cellForRowAtIndexPa

我正在尝试进行一个模式自定义转换,其中需要将框架作为我要转换到的视图控制器中tableview的第一个单元格。 当我在以下代码之后的
animateTransition:transitionContext
中放置断点时:

NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSection:0];
UITableViewCell *cell = [toViewController.tableView cellForRowAtIndexPath:indexPath];
我看到tableview和页面上的所有其他控件都是nil

经过多次搜索,我发现了一个类似的问题,建议在推送vc时使用以下代码:

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.02 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
    [self presentViewController:detailViewController animated:YES completion:nil];
});
但这不起作用,在
animateTransition:transitionContext


我知道我得到的是零,因为在视图生命周期的这一点上,tableview还没有计算出来,但在自定义转换中是否有某种方式可以引用tableview单元格?

简短的回答是否。正如您所说,只有在转换完成后,这些内容才对您可用

在使用GCD的第二个代码示例中,这只会让事情变得更糟,因为它所做的只是推迟实际转换的执行——这仍然意味着所有元素都为零