I had the same problem, but I used this code to solve the problem:
-(void)splitViewController:(UISplitViewController *)svc popoverController:(UIPopoverController *)pc willPresentViewController:(UIViewController *)aViewController { aViewController.view.frame = CGRectMake(0, 0, 320, self.view.frame.size.height); }
Apparently, when a warning about saving memory is received, the view controller is freed, so when it appears again, it gets from it the size of the parent view, which is full-screen. So you just have to reset the frame every time you boot.
Jeffh2170
source share