I have connected a UITableViewController "ObservationTableViewController" (say: UITVC1) (selected in the screenshots) to another one "ObservationContextTableViewController" (UITVC2) (on the top in the screenshot of the storyboard), via a push segue. When performing the segue by code, based on certain parameters - the new view (UITVC2) does not actually show (on top/ instead of the UITVC1 one); only the title/header shows (mix/blend) of both table view controllers, see screenshot of iPhone. The cells you see are still of the UITVC1.
...
if (nil != self.specialMessage) {
[self performSegueWithIdentifier:@"segObservationContextTable" sender:self];
return;
}
and in:
- (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];
}
}
}
The new UITVC2 does run appropriately, code wise, (viewDidLoad, viewWillAppear, etc.) all breakpointed etcetera, no issues - the app does not crash or report any errors. It runs from an actual iPhone (iOS 7.1.2), connected or not through xCode - same thing. Strangely the emulator works perfectly fine, as does on iOS8 devices: the the UITVC2 properly shows instead (pushed) of the UITVC1.
Since views of UITVC1 and UITVC2 seem to blend (title shows, and blends) but cells of the new view UITVC2 do not appear, the interactivity still comes from the UITVC1 'below', from where the segue was performed. The cells of UITVC1 still react to touch, and endlessly (on each touch) push to its own connected UITVC's (say: UITVC3) connected by push segues that act on touching it's cells of UITVC1 - again not actually showing their next views now (under these circumstances of having UITVC2 'on top' though not fully showing), but again only pushing the title to blend with the UITVC from the performed segue. When UITVC2 is not triggered, UITVC1 works fine, and correctly pushes UITV3 on cell touching, by the way.
All this described does not happen when the segue is defined as modal instead of push, but I do not want a modal segue performed, for reasons to be using nav/tool bar options etc.
What is lacking or incorrect since UITVC2 does not properly show itself when pushed; only the title shows, and blends with UITVC1, cells of UITVC2 do not show. All works fine when the segue is a modal segue..
screenshot Xcode
Zoom on UITVCs