我已经连接了一个UITableViewController" ObservationTableViewController" (比如:UITVC1)(在截图中选择)到另一个" ObservationContextTableViewController" (UITVC2)(在故事板的屏幕截图的顶部),通过推送 segue。当按代码执行 segue时,基于某些参数 - 新视图(UITVC2)实际上并不显示(在顶部/代替UITVC1);只有标题/标题显示(混合/混合)两个表视图控制器,请参阅iPhone的屏幕截图。你看到的细胞仍然是UITVC1。
...
if (nil != self.specialMessage) {
[self performSegueWithIdentifier:@"segObservationContextTable" sender:self];
return;
}
并在:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
[super prepareForSegue:segue sender:sender];
if ([segue.identifier isEqualToString:@"segObservationContextTable"]) {
[[segue destinationViewController] setFieldwork:self.fieldwork];
if ([TboHelper isProjectNSCRCIT]) {
[[segue destinationViewController] setContextValuekey:self.specialMessage];
}
}
}
新的UITVC2确实运行正常,代码方式,(viewDidLoad,viewWillAppear等)所有断点等等,没有问题 - 应用程序不崩溃或报告任何错误。它从实际的iPhone(iOS 7.1.2)运行,连接或不通过xCode - 同样的事情。奇怪的是,仿真器工作得非常好,就像在iOS8设备上一样:UITVC2恰当地显示了UITVC1(推送)。
由于UITVC1和UITVC2的视图似乎混合(标题显示和混合),但新视图UITVC2的单元格没有出现,交互性仍然来自UITVC1'下面的#,表演了。 UITVC1的细胞仍然对触摸作出反应,并且无休止地(在每次触摸时)推动其自己连接的UITVC(例如:UITVC3)通过推动片段连接,推动片段作用于触摸它的UITVC1的细胞 - 再次没有实际上现在显示他们的下一个观点(在这些情况下,UITVC2'在顶部'虽然没有完全显示),但再次只是推动标题与执行的segue中的UITVC混合。当没有触发UITVC2时,UITVC1工作正常,顺便说一句,正确地将UITV3推到细胞触摸上。
当segue定义为modal而不是push时,所有这些描述都会发生 not ,但我不想要执行模态segue,原因是使用导航/工具栏选项等。< / p>
由于UITVC2在推动时没有正确显示,因此缺少或不正确;只有标题显示,与UITVC1的混合,UITVC2的单元格不显示。当segue是模态segue时,一切正常。
截图Xcode
放大UITVCs